Long build times/duplicate work for android+googlevr project

I’ve recently started a daydream/googlevr project and I’ve noticed even with a small project (~5 meshes, 3 materials, 2 textures, 2 small blueprints, and no custom code) It’s taking around 2 minutes to package for any change I make.

Looking at the output log, it appears that some steps may be happening twice for a single packaging/launching. Is there anything I can do to reduce the work being done/improve the build times? Being able to test on device is pretty important and the longer the build times the harder it is to work efficiently.

Update (11/29): To try and find the exact culprit I created a blank project with no starter content and began testing different configurations. This issue only occurs if you enable either of the googlevr plugins - without either of them enabled android builds properly cache results and subsequent launches are much quicker. With the googlevr plugins enabled, full, duplicate rebuilds of the apk for every package or launch regardless of whether or not you’ve made any changes at all. My guess is that something in either their Build.cs or UPL script is causing issues - but I don’t know those systems well enough to determine the answer.

Here’s a sample output log from packaging the project:

LogPlayLevel: Launcher Device ID: Android_ASTC@HT6940200958
LogPlayLevel: PlayLevel: No blueprints needed recompiling
LogCook:Display: Sandbox cleanup took 2.049 seconds
LogCook:Display: String asset reference resolve tried 1 did 0
LogRedirectors:Display: Timer ResolveTimeLoad 0.630877
LogRedirectors:Display: Timer ResolveTimeDelegate 0.000000
LogRedirectors:Display: Timer ResolveTimeTotal 0.634961
LogBlueprintCodeGen:Display: Nativization Summary - AnimBP:
LogBlueprintCodeGen:Display: Name, Children, Non-empty Functions (Empty Functions), Variables, FunctionUsage, VariableUsage
LogBlueprintCodeGen: GenerateStubs - all unconverted bp: 0, generated wrapers: 0
LogChunkManifestGenerator: Starting FixupPackageDependenciesForChunks...
LogChunkManifestGenerator: Updated collection PackagesRemovedFromChunk0
LogChunkManifestGenerator: Chunk: 0, Started with 545 packages, Final after dependency resolve: 545
LogStats: ... FixupPackageDependenciesForChunks complete. -  0.000 s
LogChunkManifestGenerator:Display: Saving asset registry.
LogChunkManifestGenerator:Display: Generated asset registry num assets 384, size is 178.57kb
LogChunkManifestGenerator:Display: Done saving asset registry.
LogCook:Display: Cook by the book total time in tick 0.000017s total time 3.020235
LogCook:Display: Peak Used virtual 2352 Peak Used phsical 2036
LogCook:Display: Hierarchy timer information
Name:  Length(ms)Root: 0.000000ms
GenerateLongPackageName: 0.084113ms
SavingAssetRegistry: 291.714773ms
IntStats
LoadPackage=18
SavedPackage=406
LogPlayLevel: Completed Launch On Stage: Cooking in the editor, Time: 0.000046
LogPlayLevel: Running AutomationTool...
LogPlayLevel: Automation.ParseCommandLine: Parsing command line: -ScriptsForProject=D:/src/retrodreamer/DaydreamUE4/DaydreamUE4.uproject BuildCookRun -project=D:/src/retrodreamer/DaydreamUE4/DaydreamUE4.uproject -noP4 -clientconfig=Development -serverconfig=Development -nocompile -nocompileeditor -installed -ue4exe=UE4Editor-Cmd.exe -utf8output -platform=And
roid_ASTC -targetplatform=Android -cookflavor=ASTC -build -map=/Game/Maps/test_map -skipcook -iterativecooking -compressed -iterativedeploy -stage -deploy -cmdline="/Game/Maps/test_map -Messaging" -device=Android_ASTC@HT6940200958 -addcmdline="-SessionId=495B9320400AE74D522D4D82138C8936 -SessionOwner='rje' -SessionName='Launch On Device' " -run
LogPlayLevel: Automation.Process: Setting up command environment.
LogPlayLevel: BuildCookRun.SetupParams: Setting up ProjectParams for D:\src\retrodreamer\DaydreamUE4\DaydreamUE4.uproject
LogPlayLevel: Project.Build: ********** BUILD COMMAND STARTED **********
LogPlayLevel: Completed Launch On Stage: Build Task, Time: 0.752864
LogPlayLevel: CommandUtils.Run: Run: C:\Program Files (x86)\Epic Games\4.14\Engine\Binaries\DotNET\UnrealBuildTool.exe DaydreamUE4 Android Development -Project=D:\src\retrodreamer\DaydreamUE4\DaydreamUE4.uproject  D:\src\retrodreamer\DaydreamUE4\DaydreamUE4.uproject  -remoteini="D:\src\retrodreamer\DaydreamUE4" -noxge -generatemanifest -NoHotReload
LogPlayLevel: UnrealBuildTool: NDK version: 24, GccVersion: 4.9
LogPlayLevel: CommandUtils.Run: Run: Took 0.776879s to run UnrealBuildTool.exe, ExitCode=0
LogPlayLevel: CommandUtils.Run: Run: C:\Program Files (x86)\Epic Games\4.14\Engine\Binaries\DotNET\UnrealBuildTool.exe DaydreamUE4 Android Development -Project=D:\src\retrodreamer\DaydreamUE4\DaydreamUE4.uproject  D:\src\retrodreamer\DaydreamUE4\DaydreamUE4.uproject  -remoteini="D:\src\retrodreamer\DaydreamUE4" -noxge -NoHotReload -ignorejunk
LogPlayLevel: UnrealBuildTool: Creating makefile for DaydreamUE4 (changes to target files)
LogPlayLevel: UnrealBuildTool: NDK version: 24, GccVersion: 4.9
LogPlayLevel: UnrealBuildTool: Compiling Native code with NDK API 'android-24'
LogPlayLevel: UnrealBuildTool: Target is up to date
LogPlayLevel: UnrealBuildTool: NDK version: 24, GccVersion: 4.9
LogPlayLevel: UnrealBuildTool: Receipt Filename: D:\src\retrodreamer\DaydreamUE4\Binaries\Android\DaydreamUE4.target
LogPlayLevel: UnrealBuildTool: AndroidPlugin: Plugins\Runtime\GoogleVR\GoogleVRController\Source\GoogleVRController\GoogleVRController_APL.xml
LogPlayLevel: UnrealBuildTool: AndroidPlugin: Plugins\Runtime\GoogleVR\GoogleVRHMD\Source\GoogleVRHMD\GoogleVRHMD_APL.xml
LogPlayLevel: UnrealBuildTool:
LogPlayLevel: UnrealBuildTool: UPL: ..\Plugins/Runtime/GoogleVR/GoogleVRController/Source/GoogleVRController/GoogleVRController_APL.xml
LogPlayLevel: UnrealBuildTool:
LogPlayLevel: UnrealBuildTool: UPL: ..\Plugins/Runtime/GoogleVR/GoogleVRHMD/Source/GoogleVRHMD/GoogleVRHMD_APL.xml
LogPlayLevel: UnrealBuildTool:
LogPlayLevel: UnrealBuildTool: ====11/29/2016 3:24:07 PM====PREPARING TO MAKE APK=================================================================
LogPlayLevel: UnrealBuildTool:
LogPlayLevel: UnrealBuildTool: ==== Writing to shim file D:\src\retrodreamer\DaydreamUE4\Build\Android\src\com\epicgames\ue4\DownloadShim.java ====
LogPlayLevel: UnrealBuildTool:
LogPlayLevel: UnrealBuildTool: ==== Shim data file up to date so not writing. ====
LogPlayLevel: UnrealBuildTool:
LogPlayLevel: UnrealBuildTool: ==== Writing to template target file D:\src\retrodreamer\DaydreamUE4\Build\Android\src\com\retrodreamer\DaydreamUE4\AlarmReceiver.java ====
LogPlayLevel: UnrealBuildTool:
LogPlayLevel: UnrealBuildTool: ==== Template target file up to date so not writing. ====
LogPlayLevel: UnrealBuildTool:
LogPlayLevel: UnrealBuildTool: ==== Writing to template target file D:\src\retrodreamer\DaydreamUE4\Build\Android\src\com\retrodreamer\DaydreamUE4\DownloaderActivity.java ====
LogPlayLevel: UnrealBuildTool:
LogPlayLevel: UnrealBuildTool: ==== Template target file up to date so not writing. ====
LogPlayLevel: UnrealBuildTool:
LogPlayLevel: UnrealBuildTool: ==== Writing to template target file D:\src\retrodreamer\DaydreamUE4\Build\Android\src\com\retrodreamer\DaydreamUE4\OBBDownloaderService.java ====
LogPlayLevel: UnrealBuildTool:
LogPlayLevel: UnrealBuildTool: ==== Template target file up to date so not writing. ====
LogPlayLevel: UnrealBuildTool: Cleaning up files based on template dir D:\src\retrodreamer\DaydreamUE4\Build\Android\src\com\retrodreamer\DaydreamUE4
LogPlayLevel: UnrealBuildTool: Building Java with SDK API level 'android-24'
LogPlayLevel: UnrealBuildTool: UPL Init: arm64-v8a
LogPlayLevel: UnrealBuildTool: GoogleVR Controller init
LogPlayLevel: UnrealBuildTool: GoogleVRHMD init
LogPlayLevel: UnrealBuildTool: Sustained-performance mode is desired
LogPlayLevel: UnrealBuildTool: Packaging app for Daydream deployment. Async reprojection and sustained-performance will be forced.
LogPlayLevel: UnrealBuildTool: On build machine.
LogPlayLevel: UnrealBuildTool: Disabling Show Launch Image for Daydream enabled application
LogPlayLevel: UnrealBuildTool: bPackageDataInsideApk = False
LogPlayLevel: UnrealBuildTool: Added repository: C:\NVPACK\android-sdk-windows\extras\android\m2repository
LogPlayLevel: UnrealBuildTool: Added repository: ..\..\Engine\Source\ThirdParty\Android\extras\google\m2repository
LogPlayLevel: UnrealBuildTool: Added repository: ..\..\Engine\Source\ThirdParty\Android\extras\android\m2repository
LogPlayLevel: UnrealBuildTool: AARImports: com.google.android.gms, play-services-ads, 9.2.0
LogPlayLevel: UnrealBuildTool: AARImports: com.google.android.gms, play-services-auth, 9.2.0
LogPlayLevel: UnrealBuildTool: AARImports: com.google.android.gms, play-services-games, 9.2.0
LogPlayLevel: UnrealBuildTool: AARImports: com.google.android.gms, play-services-nearby, 9.2.0
LogPlayLevel: UnrealBuildTool: AARImports: com.google.android.gms, play-services-plus, 9.2.0
LogPlayLevel: UnrealBuildTool:
LogPlayLevel: UnrealBuildTool: ====11/29/2016 3:24:08 PM====PREPARING NATIVE CODE=================================================================
LogPlayLevel: UnrealBuildTool: On build machine.
LogPlayLevel: UnrealBuildTool: Disabling Show Launch Image for Daydream enabled application
LogPlayLevel: UnrealBuildTool: Copying GoogleVR buildtime files to staging
LogPlayLevel: UnrealBuildTool:
LogPlayLevel: UnrealBuildTool: Directory ../../Engine//Source/ThirdParty/GoogleVR/lib/common_library copied to D:\src\retrodreamer\DaydreamUE4\Intermediate/Android/APK/JavaLibs/common_library
LogPlayLevel: UnrealBuildTool: Copying GoogleVR buildtime files to staging
LogPlayLevel: UnrealBuildTool:
LogPlayLevel: UnrealBuildTool: Directory ../../Engine//Source/ThirdParty/GoogleVR/lib/common_library copied to D:\src\retrodreamer\DaydreamUE4\Intermediate/Android/APK/JavaLibs/common_library
LogPlayLevel: UnrealBuildTool:
LogPlayLevel: UnrealBuildTool: ====11/29/2016 3:24:08 PM====UPDATING BUILD CONFIGURATION FILES====================================================
LogPlayLevel: UnrealBuildTool: Updating project.properties, local.properties, and build.xml for common_library...
LogPlayLevel: UnrealBuildTool: Updating project.properties, local.properties, and build.xml for downloader_library...
LogPlayLevel: UnrealBuildTool: Updating project.properties, local.properties, and build.xml for play-services-ads-9.2.0...
LogPlayLevel: UnrealBuildTool: Updating project.properties, local.properties, and build.xml for play-services-ads-lite-9.2.0...
LogPlayLevel: UnrealBuildTool: Updating project.properties, local.properties, and build.xml for play-services-auth-9.2.0...
LogPlayLevel: UnrealBuildTool: Updating project.properties, local.properties, and build.xml for play-services-auth-base-9.2.0...
LogPlayLevel: UnrealBuildTool: Updating project.properties, local.properties, and build.xml for play-services-base-9.2.0...
LogPlayLevel: UnrealBuildTool: Updating project.properties, local.properties, and build.xml for play-services-basement-9.2.0...
LogPlayLevel: UnrealBuildTool: Updating project.properties, local.properties, and build.xml for play-services-clearcut-9.2.0...
LogPlayLevel: UnrealBuildTool: Updating project.properties, local.properties, and build.xml for play-services-drive-9.2.0...
LogPlayLevel: UnrealBuildTool: Updating project.properties, local.properties, and build.xml for play-services-games-9.2.0...
LogPlayLevel: UnrealBuildTool: Updating project.properties, local.properties, and build.xml for play-services-gass-9.2.0...
LogPlayLevel: UnrealBuildTool: Updating project.properties, local.properties, and build.xml for play-services-nearby-9.2.0...
LogPlayLevel: UnrealBuildTool: Updating project.properties, local.properties, and build.xml for play-services-plus-9.2.0...
LogPlayLevel: UnrealBuildTool: Updating project.properties, local.properties, and build.xml for play-services-tasks-9.2.0...
LogPlayLevel: UnrealBuildTool: Updating project.properties, local.properties, and build.xml for support-v4-23.0.0...
LogPlayLevel: UnrealBuildTool:
LogPlayLevel: UnrealBuildTool: ==== Writing new GameActivity.java file to D:\src\retrodreamer\DaydreamUE4\Intermediate/Android/APK\src\com\epicgames\ue4\GameActivity.java ====
LogPlayLevel: UnrealBuildTool: Copying GoogleVR files to staging
LogPlayLevel: UnrealBuildTool: Copying GoogleVR runtime files to staging
LogPlayLevel: UnrealBuildTool:
LogPlayLevel: UnrealBuildTool: ====11/29/2016 3:24:26 PM====PERFORMING FINAL APK PACKAGE OPERATION================================================
LogPlayLevel: UnrealBuildTool: Making .apk with Ant... (note: it's safe to ignore javac obsolete warnings)
LogPlayLevel: UnrealBuildTool:     [javac] warning: [options] source value 1.5 is obsolete and will be removed in a future release
LogPlayLevel: UnrealBuildTool:     [javac] warning: [options] target value 1.5 is obsolete and will be removed in a future release
LogPlayLevel: UnrealBuildTool:     [javac] warning: [options] To suppress warnings about obsolete options, use -Xlint:-options.
LogPlayLevel: UnrealBuildTool:     [javac] 3 warnings
LogPlayLevel: UnrealBuildTool:     [javac] warning: [options] source value 1.5 is obsolete and will be removed in a future release
LogPlayLevel: UnrealBuildTool:     [javac] warning: [options] target value 1.5 is obsolete and will be removed in a future release
LogPlayLevel: UnrealBuildTool:     [javac] warning: [options] To suppress warnings about obsolete options, use -Xlint:-options.
LogPlayLevel: UnrealBuildTool:     [javac] 3 warnings
LogPlayLevel: UnrealBuildTool:     [javac] warning: [options] source value 1.5 is obsolete and will be removed in a future release
LogPlayLevel: UnrealBuildTool:     [javac] warning: [options] target value 1.5 is obsolete and will be removed in a future release
LogPlayLevel: UnrealBuildTool:     [javac] warning: [options] To suppress warnings about obsolete options, use -Xlint:-options.
LogPlayLevel: UnrealBuildTool:     [javac] 3 warnings
LogPlayLevel: UnrealBuildTool:     [javac] warning: [options] source value 1.5 is obsolete and will be removed in a future release
LogPlayLevel: UnrealBuildTool:     [javac] warning: [options] target value 1.5 is obsolete and will be removed in a future release
LogPlayLevel: UnrealBuildTool:     [javac] warning: [options] To suppress warnings about obsolete options, use -Xlint:-options.
LogPlayLevel: UnrealBuildTool:     [javac] 3 warnings
LogPlayLevel: UnrealBuildTool:     [javac] warning: [options] source value 1.5 is obsolete and will be removed in a future release
LogPlayLevel: UnrealBuildTool:     [javac] warning: [options] target value 1.5 is obsolete and will be removed in a future release
LogPlayLevel: UnrealBuildTool:     [javac] warning: [options] To suppress warnings about obsolete options, use -Xlint:-options.
LogPlayLevel: UnrealBuildTool:     [javac] 3 warnings
LogPlayLevel: UnrealBuildTool: Duplicated project name in import. Project custom_rules defined first in D:\src\retrodreamer\DaydreamUE4\Intermediate\Android\APK\custom_rules.xml and again in D:\src\retrodreamer\DaydreamUE4\Intermediate\Android\APK\JavaLibs\common_library\custom_rules.xml
LogPlayLevel: UnrealBuildTool:     [javac] warning: [options] source value 1.5 is obsolete and will be removed in a future release
LogPlayLevel: UnrealBuildTool:     [javac] warning: [options] target value 1.5 is obsolete and will be removed in a future release
LogPlayLevel: UnrealBuildTool:     [javac] warning: [options] To suppress warnings about obsolete options, use -Xlint:-options.
LogPlayLevel: UnrealBuildTool:     [javac] 3 warnings
LogPlayLevel: UnrealBuildTool:     [javac] warning: [options] source value 1.5 is obsolete and will be removed in a future release
LogPlayLevel: UnrealBuildTool:     [javac] warning: [options] target value 1.5 is obsolete and will be removed in a future release
LogPlayLevel: UnrealBuildTool:     [javac] warning: [options] To suppress warnings about obsolete options, use -Xlint:-options.
LogPlayLevel: UnrealBuildTool:     [javac] Note: D:\src\retrodreamer\DaydreamUE4\Intermediate\Android\APK\src\com\epicgames\ue4\GameActivity.java uses or overrides a deprecated API.
LogPlayLevel: UnrealBuildTool:     [javac] Note: Recompile with -Xlint:deprecation for details.
LogPlayLevel: UnrealBuildTool:     [javac] 3 warnings
LogPlayLevel: UnrealBuildTool:
LogPlayLevel: UnrealBuildTool: BUILD SUCCESSFUL
LogPlayLevel: UnrealBuildTool: Total time: 40 seconds
LogPlayLevel: UnrealBuildTool: ================================================================================================================================
LogPlayLevel: UnrealBuildTool: Non-default apk(s) have been made: If you are debugging, you will need to manually select one to run in the debugger properties!
LogPlayLevel: UnrealBuildTool: ================================================================================================================================
LogPlayLevel: CommandUtils.Run: Run: Took 62.2085914s to run UnrealBuildTool.exe, ExitCode=0
LogPlayLevel: CommandUtils.Run: Run: C:\Program Files (x86)\Epic Games\4.14\Engine\Binaries\DotNET\UnrealBuildTool.exe DaydreamUE4 Android Development -prepfordeploy -project="D:\src\retrodreamer\DaydreamUE4\DaydreamUE4.uproject" -NoHotReload -ignorejunk
LogPlayLevel: UnrealBuildTool: NDK version: 24, GccVersion: 4.9
LogPlayLevel: UnrealBuildTool: Receipt Filename: D:\src\retrodreamer\DaydreamUE4\Binaries\Android\DaydreamUE4.target
LogPlayLevel: UnrealBuildTool: AndroidPlugin: Plugins\Runtime\GoogleVR\GoogleVRController\Source\GoogleVRController\GoogleVRController_APL.xml
LogPlayLevel: UnrealBuildTool: AndroidPlugin: Plugins\Runtime\GoogleVR\GoogleVRHMD\Source\GoogleVRHMD\GoogleVRHMD_APL.xml
LogPlayLevel: UnrealBuildTool:
LogPlayLevel: UnrealBuildTool: UPL: ..\Plugins/Runtime/GoogleVR/GoogleVRController/Source/GoogleVRController/GoogleVRController_APL.xml
LogPlayLevel: UnrealBuildTool:
LogPlayLevel: UnrealBuildTool: UPL: ..\Plugins/Runtime/GoogleVR/GoogleVRHMD/Source/GoogleVRHMD/GoogleVRHMD_APL.xml
LogPlayLevel: UnrealBuildTool:
LogPlayLevel: UnrealBuildTool: ====11/29/2016 3:25:08 PM====PREPARING TO MAKE APK=================================================================
LogPlayLevel: UnrealBuildTool:
LogPlayLevel: UnrealBuildTool: ==== Writing to shim file D:\src\retrodreamer\DaydreamUE4\Build\Android\src\com\epicgames\ue4\DownloadShim.java ====
LogPlayLevel: UnrealBuildTool:
LogPlayLevel: UnrealBuildTool: ==== Shim data file up to date so not writing. ====
LogPlayLevel: UnrealBuildTool:
LogPlayLevel: UnrealBuildTool: ==== Writing to template target file D:\src\retrodreamer\DaydreamUE4\Build\Android\src\com\retrodreamer\DaydreamUE4\AlarmReceiver.java ====
LogPlayLevel: UnrealBuildTool:
LogPlayLevel: UnrealBuildTool: ==== Template target file up to date so not writing. ====
LogPlayLevel: UnrealBuildTool:
LogPlayLevel: UnrealBuildTool: ==== Writing to template target file D:\src\retrodreamer\DaydreamUE4\Build\Android\src\com\retrodreamer\DaydreamUE4\DownloaderActivity.java ====
LogPlayLevel: UnrealBuildTool:
LogPlayLevel: UnrealBuildTool: ==== Template target file up to date so not writing. ====
LogPlayLevel: UnrealBuildTool:
LogPlayLevel: UnrealBuildTool: ==== Writing to template target file D:\src\retrodreamer\DaydreamUE4\Build\Android\src\com\retrodreamer\DaydreamUE4\OBBDownloaderService.java ====
LogPlayLevel: UnrealBuildTool:
LogPlayLevel: UnrealBuildTool: ==== Template target file up to date so not writing. ====
LogPlayLevel: UnrealBuildTool: Cleaning up files based on template dir D:\src\retrodreamer\DaydreamUE4\Build\Android\src\com\retrodreamer\DaydreamUE4
LogPlayLevel: UnrealBuildTool: Building Java with SDK API level 'android-24'
LogPlayLevel: UnrealBuildTool: UPL Init: arm64-v8a
LogPlayLevel: UnrealBuildTool: GoogleVR Controller init
LogPlayLevel: UnrealBuildTool: GoogleVRHMD init
LogPlayLevel: UnrealBuildTool: Sustained-performance mode is desired
LogPlayLevel: UnrealBuildTool: Packaging app for Daydream deployment. Async reprojection and sustained-performance will be forced.
LogPlayLevel: UnrealBuildTool: On build machine.
LogPlayLevel: UnrealBuildTool: Disabling Show Launch Image for Daydream enabled application
LogPlayLevel: UnrealBuildTool: Output .apk file(s) are up to date (dependencies and build settings are up to date)
LogPlayLevel: UnrealBuildTool: ================================================================================================================================
LogPlayLevel: UnrealBuildTool: Non-default apk(s) have been made: If you are debugging, you will need to manually select one to run in the debugger properties!
LogPlayLevel: UnrealBuildTool: ================================================================================================================================
LogPlayLevel: CommandUtils.Run: Run: Took 0.6010412s to run UnrealBuildTool.exe, ExitCode=0
LogPlayLevel: Project.Build: ********** BUILD COMMAND COMPLETED **********
LogPlayLevel: Project.CopyBuildToStagingDirectory: ********** STAGE COMMAND STARTED **********
LogPlayLevel: Project.WriteStageCommandline: Creating UE4CommandLine.txt
LogPlayLevel: Project.CreateStagingManifest: Creating Staging Manifest...
LogPlayLevel: Completed Launch On Stage: Build Task, Time: 63.130203
LogPlayLevel: Project.CleanStagingDirectory: Cleaning Stage Directory: D:\src\retrodreamer\DaydreamUE4\Saved\StagedBuilds\Android_ASTC
LogPlayLevel: Project.CopyManifestFilesToStageDir: Copying NonUFSFiles to staging directory: D:\src\retrodreamer\DaydreamUE4\Saved\StagedBuilds\Android_ASTC
LogPlayLevel: Project.CopyManifestFilesToStageDir: Copying DebugFiles to staging directory: D:\src\retrodreamer\DaydreamUE4\Saved\StagedBuilds\Android_ASTC
LogPlayLevel: Project.CopyManifestFilesToStageDir: Copying UFSFiles to staging directory: D:\src\retrodreamer\DaydreamUE4\Saved\StagedBuilds\Android_ASTC
LogPlayLevel: CommandUtils.Run: Run: C:\NVPACK\android-sdk-windows\platform-tools\adb.exe -s HT6940200958 shell "echo $EXTERNAL_STORAGE"
LogPlayLevel: CommandUtils.Run: Run: Took 0.0440768s to run adb.exe, ExitCode=0
LogPlayLevel: CommandUtils.Run: Run: C:\NVPACK\android-sdk-windows\platform-tools\adb.exe -s HT6940200958  pull /sdcard/UE4Game/DaydreamUE4/Manifest_UFSFiles_Android.txt "D:\src\retrodreamer\DaydreamUE4\Saved\StagedBuilds\Android_ASTC\Manifest_UFSFiles_Android.txt_HT6940200958"
LogPlayLevel: CommandUtils.Run: Run: Took 0.0385696s to run adb.exe, ExitCode=0
LogPlayLevel: CommandUtils.Run: Run: C:\NVPACK\android-sdk-windows\platform-tools\adb.exe -s HT6940200958  pull /sdcard/UE4Game/DaydreamUE4/Manifest_NonUFSFiles_Android.txt "D:\src\retrodreamer\DaydreamUE4\Saved\StagedBuilds\Android_ASTC\Manifest_NonUFSFiles_Android.txt_HT6940200958"
LogPlayLevel: CommandUtils.Run: Run: Took 0.0290512s to run adb.exe, ExitCode=0
LogPlayLevel: Project.CopyBuildToStagingDirectory: ********** STAGE COMMAND COMPLETED **********
LogPlayLevel: Project.Package: ********** PACKAGE COMMAND STARTED **********
LogPlayLevel: Project.Package: ********** PACKAGE COMMAND COMPLETED **********
LogPlayLevel: Project.Deploy: ********** DEPLOY COMMAND STARTED **********
LogPlayLevel: CommandUtils.Run: Run: C:\NVPACK\android-sdk-windows\platform-tools\adb.exe -s HT6940200958  shell getprop ro.product.cpu.abi
LogPlayLevel: CommandUtils.Run: Run: Took 0.0796413s to run adb.exe, ExitCode=0
LogPlayLevel: CommandUtils.Run: Run: C:\NVPACK\android-sdk-windows\platform-tools\adb.exe -s HT6940200958 shell dumpsys SurfaceFlinger
LogPlayLevel: CommandUtils.Run: Run: Took 0.0796419s to run adb.exe, ExitCode=0
LogPlayLevel: AndroidPlatform.CollectPluginDataPaths: AndroidPlugin: Plugins\Runtime\GoogleVR\GoogleVRController\Source\GoogleVRController\GoogleVRController_APL.xml
LogPlayLevel: AndroidPlatform.CollectPluginDataPaths: AndroidPlugin: Plugins\Runtime\GoogleVR\GoogleVRHMD\Source\GoogleVRHMD\GoogleVRHMD_APL.xml
LogPlayLevel: UnrealPluginLanguage..ctor:
LogPlayLevel: UPL: Engine\Plugins/Runtime/GoogleVR/GoogleVRController/Source/GoogleVRController/GoogleVRController_APL.xml
LogPlayLevel: UnrealPluginLanguage..ctor:
LogPlayLevel: UPL: Engine\Plugins/Runtime/GoogleVR/GoogleVRHMD/Source/GoogleVRHMD/GoogleVRHMD_APL.xml
LogPlayLevel: UEDeployAndroid.MakeApk:
LogPlayLevel: ====11/29/2016 3:25:08 PM====PREPARING TO MAKE APK=================================================================
LogPlayLevel: UEDeployAndroid.WriteJavaOBBDataFile:
LogPlayLevel: ==== Writing to OBB data file D:\src\retrodreamer\DaydreamUE4\Build\Android\src\com\retrodreamer\DaydreamUE4\OBBData.java ====
LogPlayLevel: UEDeployAndroid.WriteJavaOBBDataFile:
LogPlayLevel: ==== OBB data file up to date so not writing. ====
LogPlayLevel: UEDeployAndroid.WriteJavaDownloadSupportFiles:
LogPlayLevel: ==== Writing to shim file D:\src\retrodreamer\DaydreamUE4\Build\Android\src\com\epicgames\ue4\DownloadShim.java ====
LogPlayLevel: UEDeployAndroid.WriteJavaDownloadSupportFiles:
LogPlayLevel: ==== Shim data file up to date so not writing. ====
LogPlayLevel: UEDeployAndroid.WriteJavaDownloadSupportFiles:
LogPlayLevel: ==== Writing to template target file D:\src\retrodreamer\DaydreamUE4\Build\Android\src\com\retrodreamer\DaydreamUE4\AlarmReceiver.java ====
LogPlayLevel: UEDeployAndroid.WriteJavaDownloadSupportFiles:
LogPlayLevel: ==== Template target file up to date so not writing. ====
LogPlayLevel: UEDeployAndroid.WriteJavaDownloadSupportFiles:
LogPlayLevel: ==== Writing to template target file D:\src\retrodreamer\DaydreamUE4\Build\Android\src\com\retrodreamer\DaydreamUE4\DownloaderActivity.java ====
LogPlayLevel: UEDeployAndroid.WriteJavaDownloadSupportFiles:
LogPlayLevel: ==== Template target file up to date so not writing. ====
LogPlayLevel: UEDeployAndroid.WriteJavaDownloadSupportFiles:
LogPlayLevel: ==== Writing to template target file D:\src\retrodreamer\DaydreamUE4\Build\Android\src\com\retrodreamer\DaydreamUE4\OBBDownloaderService.java ====
LogPlayLevel: UEDeployAndroid.WriteJavaDownloadSupportFiles:
LogPlayLevel: ==== Template target file up to date so not writing. ====
LogPlayLevel: UEDeployAndroid.MakeApk: Cleaning up files based on template dir D:\src\retrodreamer\DaydreamUE4\Build\Android\src\com\retrodreamer\DaydreamUE4
LogPlayLevel: Building Java with SDK API level 'android-24'
LogPlayLevel: UnrealPluginLanguage.Init: UPL Init: arm64-v8a
LogPlayLevel: UnrealPluginLanguage.ProcessPluginNode: GoogleVR Controller init
LogPlayLevel: UnrealPluginLanguage.ProcessPluginNode: GoogleVRHMD init
LogPlayLevel: UnrealPluginLanguage.ProcessPluginNode: Sustained-performance mode is desired
LogPlayLevel: UnrealPluginLanguage.ProcessPluginNode: Packaging app for Daydream deployment. Async reprojection and sustained-performance will be forced.
LogPlayLevel: UEDeployAndroid.RequiresOBB: APK contains data.
LogPlayLevel: UEDeployAndroid.GenerateManifest: Disabling Show Launch Image for Daydream enabled application
LogPlayLevel: UEDeployAndroid.MakeApk: Performing complete package - wiping D:\src\retrodreamer\DaydreamUE4\Intermediate/Android/APK, except for predexedLibs
LogPlayLevel: UEDeployAndroid.MakeApk: bPackageDataInsideApk = False
LogPlayLevel: AndroidAARHandler.AddRepositories: Added repository: C:\NVPACK\android-sdk-windows\extras\android\m2repository
LogPlayLevel: AndroidAARHandler.AddRepositories: Added repository: C:\Program Files (x86)\Epic Games\4.14\Engine\Source\ThirdParty\Android\extras\google\m2repository
LogPlayLevel: AndroidAARHandler.AddRepositories: Added repository: C:\Program Files (x86)\Epic Games\4.14\Engine\Source\ThirdParty\Android\extras\android\m2repository
LogPlayLevel: UEDeployAndroid.ExtractAARAndJARFiles: AARImports: com.google.android.gms, play-services-ads, 9.2.0
LogPlayLevel: UEDeployAndroid.ExtractAARAndJARFiles: AARImports: com.google.android.gms, play-services-auth, 9.2.0
LogPlayLevel: UEDeployAndroid.ExtractAARAndJARFiles: AARImports: com.google.android.gms, play-services-games, 9.2.0
LogPlayLevel: UEDeployAndroid.ExtractAARAndJARFiles: AARImports: com.google.android.gms, play-services-nearby, 9.2.0
LogPlayLevel: UEDeployAndroid.ExtractAARAndJARFiles: AARImports: com.google.android.gms, play-services-plus, 9.2.0
LogPlayLevel: AndroidAARHandler.ExtractAARs: Extracting AAR play-services-ads-9.2.0
LogPlayLevel: AndroidAARHandler.ExtractAARs: Extracting AAR play-services-ads-lite-9.2.0
LogPlayLevel: AndroidAARHandler.ExtractAARs: Extracting AAR play-services-basement-9.2.0
LogPlayLevel: AndroidAARHandler.ExtractAARs: Extracting AAR support-v4-23.0.0
LogPlayLevel: AndroidAARHandler.ExtractAARs: Extracting AAR play-services-base-9.2.0
LogPlayLevel: AndroidAARHandler.ExtractAARs: Extracting AAR play-services-tasks-9.2.0
LogPlayLevel: AndroidAARHandler.ExtractAARs: Extracting AAR play-services-clearcut-9.2.0
LogPlayLevel: AndroidAARHandler.ExtractAARs: Extracting AAR play-services-gass-9.2.0
LogPlayLevel: AndroidAARHandler.ExtractAARs: Extracting AAR play-services-auth-9.2.0
LogPlayLevel: AndroidAARHandler.ExtractAARs: Extracting AAR play-services-auth-base-9.2.0
LogPlayLevel: AndroidAARHandler.ExtractAARs: Extracting AAR play-services-games-9.2.0
LogPlayLevel: AndroidAARHandler.ExtractAARs: Extracting AAR play-services-drive-9.2.0
LogPlayLevel: AndroidAARHandler.ExtractAARs: Extracting AAR play-services-nearby-9.2.0
LogPlayLevel: AndroidAARHandler.ExtractAARs: Extracting AAR play-services-plus-9.2.0
LogPlayLevel: AndroidAARHandler.CopyJARs: Copying JAR support-annotations-23.0.0.jar
LogPlayLevel: UEDeployAndroid.MakeApk:
LogPlayLevel: ====11/29/2016 3:25:10 PM====PREPARING NATIVE CODE=================================================================
LogPlayLevel: UEDeployAndroid.RequiresOBB: APK contains data.
LogPlayLevel: UEDeployAndroid.GenerateManifest: Disabling Show Launch Image for Daydream enabled application
LogPlayLevel: UnrealPluginLanguage.ProcessPluginNode: Copying GoogleVR buildtime files to staging
LogPlayLevel: UnrealPluginLanguage.ProcessPluginNode:
LogPlayLevel: Directory C:\Program Files (x86)\Epic Games\4.14/Engine/Source/ThirdParty/GoogleVR/lib/common_library copied to D:\src\retrodreamer\DaydreamUE4\Intermediate/Android/APK/JavaLibs/common_library
LogPlayLevel: UnrealPluginLanguage.ProcessPluginNode: Copying GoogleVR buildtime files to staging
LogPlayLevel: UnrealPluginLanguage.ProcessPluginNode:
LogPlayLevel: Directory C:\Program Files (x86)\Epic Games\4.14/Engine/Source/ThirdParty/GoogleVR/lib/common_library copied to D:\src\retrodreamer\DaydreamUE4\Intermediate/Android/APK/JavaLibs/common_library
LogPlayLevel: UEDeployAndroid.UpdateProjectProperties:
LogPlayLevel: ====11/29/2016 3:25:10 PM====UPDATING BUILD CONFIGURATION FILES====================================================
LogPlayLevel: UEDeployAndroid.RunCommandLineProgramWithException: Updating project.properties, local.properties, and build.xml for common_library...
LogPlayLevel: UEDeployAndroid.RunCommandLineProgramWithException: Updating project.properties, local.properties, and build.xml for downloader_library...
LogPlayLevel: UEDeployAndroid.RunCommandLineProgramWithException: Updating project.properties, local.properties, and build.xml for play-services-ads-9.2.0...
LogPlayLevel: UEDeployAndroid.RunCommandLineProgramWithException: Updating project.properties, local.properties, and build.xml for play-services-ads-lite-9.2.0...
LogPlayLevel: UEDeployAndroid.RunCommandLineProgramWithException: Updating project.properties, local.properties, and build.xml for play-services-auth-9.2.0...
LogPlayLevel: UEDeployAndroid.RunCommandLineProgramWithException: Updating project.properties, local.properties, and build.xml for play-services-auth-base-9.2.0...
LogPlayLevel: UEDeployAndroid.RunCommandLineProgramWithException: Updating project.properties, local.properties, and build.xml for play-services-base-9.2.0...
LogPlayLevel: UEDeployAndroid.RunCommandLineProgramWithException: Updating project.properties, local.properties, and build.xml for play-services-basement-9.2.0...
LogPlayLevel: UEDeployAndroid.RunCommandLineProgramWithException: Updating project.properties, local.properties, and build.xml for play-services-clearcut-9.2.0...
LogPlayLevel: UEDeployAndroid.RunCommandLineProgramWithException: Updating project.properties, local.properties, and build.xml for play-services-drive-9.2.0...
LogPlayLevel: UEDeployAndroid.RunCommandLineProgramWithException: Updating project.properties, local.properties, and build.xml for play-services-games-9.2.0...
LogPlayLevel: UEDeployAndroid.RunCommandLineProgramWithException: Updating project.properties, local.properties, and build.xml for play-services-gass-9.2.0...
LogPlayLevel: UEDeployAndroid.RunCommandLineProgramWithException: Updating project.properties, local.properties, and build.xml for play-services-nearby-9.2.0...
LogPlayLevel: UEDeployAndroid.RunCommandLineProgramWithException: Updating project.properties, local.properties, and build.xml for play-services-plus-9.2.0...
LogPlayLevel: UEDeployAndroid.RunCommandLineProgramWithException: Updating project.properties, local.properties, and build.xml for play-services-tasks-9.2.0...
LogPlayLevel: UEDeployAndroid.RunCommandLineProgramWithException: Updating project.properties, local.properties, and build.xml for support-v4-23.0.0...
LogPlayLevel: UEDeployAndroid.UpdateGameActivity:
LogPlayLevel: ==== Writing new GameActivity.java file to D:\src\retrodreamer\DaydreamUE4\Intermediate/Android/APK\src\com\epicgames\ue4\GameActivity.java ====
LogPlayLevel: UEDeployAndroid.MakeApk:
LogPlayLevel: Copying new .so D:\src\retrodreamer\DaydreamUE4\Binaries\Android\DaydreamUE4-arm64-es2.so file to jni folder...
LogPlayLevel: UEDeployAndroid.RunCommandLineProgramWithException: Preparing native code for debugging...
LogPlayLevel: UnrealPluginLanguage.ProcessPluginNode: Copying GoogleVR files to staging
LogPlayLevel: UnrealPluginLanguage.ProcessPluginNode:
LogPlayLevel: File C:\Program Files (x86)\Epic Games\4.14/Engine/Source/ThirdParty/GoogleVR/lib/android_arm64/libgvr.so copied to D:\src\retrodreamer\DaydreamUE4\Intermediate/Android/APK/libs/arm64-v8a/libgvr.so
LogPlayLevel: UnrealPluginLanguage.ProcessPluginNode: Copying GoogleVR runtime files to staging
LogPlayLevel: UEDeployAndroid.MakeApk:
LogPlayLevel: ====11/29/2016 3:25:31 PM====PERFORMING FINAL APK PACKAGE OPERATION================================================
LogPlayLevel: UEDeployAndroid.RunCommandLineProgramAndReturnResult: Making .apk with Ant... (note: it's safe to ignore javac obsolete warnings)
LogPlayLevel:     [javac] warning: [options] source value 1.5 is obsolete and will be removed in a future release
LogPlayLevel:     [javac] warning: [options] target value 1.5 is obsolete and will be removed in a future release
LogPlayLevel:     [javac] warning: [options] To suppress warnings about obsolete options, use -Xlint:-options.
LogPlayLevel:     [javac] 3 warnings
LogPlayLevel:     [javac] warning: [options] source value 1.5 is obsolete and will be removed in a future release
LogPlayLevel:     [javac] warning: [options] target value 1.5 is obsolete and will be removed in a future release
LogPlayLevel:     [javac] warning: [options] To suppress warnings about obsolete options, use -Xlint:-options.
LogPlayLevel:     [javac] 3 warnings
LogPlayLevel:     [javac] warning: [options] source value 1.5 is obsolete and will be removed in a future release
LogPlayLevel:     [javac] warning: [options] target value 1.5 is obsolete and will be removed in a future release
LogPlayLevel:     [javac] warning: [options] To suppress warnings about obsolete options, use -Xlint:-options.
LogPlayLevel:     [javac] 3 warnings
LogPlayLevel:     [javac] warning: [options] source value 1.5 is obsolete and will be removed in a future release
LogPlayLevel:     [javac] warning: [options] target value 1.5 is obsolete and will be removed in a future release
LogPlayLevel:     [javac] warning: [options] To suppress warnings about obsolete options, use -Xlint:-options.
LogPlayLevel:     [javac] 3 warnings
LogPlayLevel:     [javac] warning: [options] source value 1.5 is obsolete and will be removed in a future release
LogPlayLevel:     [javac] warning: [options] target value 1.5 is obsolete and will be removed in a future release
LogPlayLevel:     [javac] warning: [options] To suppress warnings about obsolete options, use -Xlint:-options.
LogPlayLevel:     [javac] 3 warnings
LogPlayLevel:     [javac] warning: [options] source value 1.5 is obsolete and will be removed in a future release
LogPlayLevel:     [javac] warning: [options] target value 1.5 is obsolete and will be removed in a future release
LogPlayLevel:     [javac] warning: [options] To suppress warnings about obsolete options, use -Xlint:-options.
LogPlayLevel:     [javac] 3 warnings
LogPlayLevel:     [javac] warning: [options] source value 1.5 is obsolete and will be removed in a future release
LogPlayLevel:     [javac] warning: [options] target value 1.5 is obsolete and will be removed in a future release
LogPlayLevel:     [javac] warning: [options] To suppress warnings about obsolete options, use -Xlint:-options.
LogPlayLevel:     [javac] 3 warnings
LogPlayLevel:     [javac] warning: [options] source value 1.5 is obsolete and will be removed in a future release
LogPlayLevel:     [javac] warning: [options] target value 1.5 is obsolete and will be removed in a future release
LogPlayLevel:     [javac] warning: [options] To suppress warnings about obsolete options, use -Xlint:-options.
LogPlayLevel:     [javac] 3 warnings
LogPlayLevel:     [javac] warning: [options] source value 1.5 is obsolete and will be removed in a future release
LogPlayLevel:     [javac] warning: [options] target value 1.5 is obsolete and will be removed in a future release
LogPlayLevel:     [javac] warning: [options] To suppress warnings about obsolete options, use -Xlint:-options.
LogPlayLevel:     [javac] 3 warnings
LogPlayLevel:     [javac] warning: [options] source value 1.5 is obsolete and will be removed in a future release
LogPlayLevel:     [javac] warning: [options] target value 1.5 is obsolete and will be removed in a future release
LogPlayLevel:     [javac] warning: [options] To suppress warnings about obsolete options, use -Xlint:-options.
LogPlayLevel:     [javac] 3 warnings
LogPlayLevel:     [javac] warning: [options] source value 1.5 is obsolete and will be removed in a future release
LogPlayLevel:     [javac] warning: [options] target value 1.5 is obsolete and will be removed in a future release
LogPlayLevel:     [javac] warning: [options] To suppress warnings about obsolete options, use -Xlint:-options.
LogPlayLevel:     [javac] 3 warnings
LogPlayLevel:     [javac] warning: [options] source value 1.5 is obsolete and will be removed in a future release
LogPlayLevel:     [javac] warning: [options] target value 1.5 is obsolete and will be removed in a future release
LogPlayLevel:     [javac] warning: [options] To suppress warnings about obsolete options, use -Xlint:-options.
LogPlayLevel:     [javac] 3 warnings
LogPlayLevel:     [javac] warning: [options] source value 1.5 is obsolete and will be removed in a future release
LogPlayLevel:     [javac] warning: [options] target value 1.5 is obsolete and will be removed in a future release
LogPlayLevel:     [javac] warning: [options] To suppress warnings about obsolete options, use -Xlint:-options.
LogPlayLevel:     [javac] 3 warnings
LogPlayLevel:     [javac] warning: [options] source value 1.5 is obsolete and will be removed in a future release
LogPlayLevel:     [javac] warning: [options] target value 1.5 is obsolete and will be removed in a future release
LogPlayLevel:     [javac] warning: [options] To suppress warnings about obsolete options, use -Xlint:-options.
LogPlayLevel:     [javac] 3 warnings
LogPlayLevel:     [javac] warning: [options] source value 1.5 is obsolete and will be removed in a future release
LogPlayLevel:     [javac] warning: [options] target value 1.5 is obsolete and will be removed in a future release
LogPlayLevel:     [javac] warning: [options] To suppress warnings about obsolete options, use -Xlint:-options.
LogPlayLevel:     [javac] 3 warnings
LogPlayLevel: Duplicated project name in import. Project custom_rules defined first in D:\src\retrodreamer\DaydreamUE4\Intermediate\Android\APK\custom_rules.xml and again in D:\src\retrodreamer\DaydreamUE4\Intermediate\Android\APK\JavaLibs\common_library\custom_rules.xml
LogPlayLevel:     [javac] warning: [options] source value 1.5 is obsolete and will be removed in a future release
LogPlayLevel:     [javac] warning: [options] target value 1.5 is obsolete and will be removed in a future release
LogPlayLevel:     [javac] warning: [options] To suppress warnings about obsolete options, use -Xlint:-options.
LogPlayLevel:     [javac] 3 warnings
LogPlayLevel:     [javac] warning: [options] source value 1.5 is obsolete and will be removed in a future release
LogPlayLevel:     [javac] warning: [options] target value 1.5 is obsolete and will be removed in a future release
LogPlayLevel:     [javac] warning: [options] To suppress warnings about obsolete options, use -Xlint:-options.
LogPlayLevel:     [javac] Note: Some input files use or override a deprecated API.
LogPlayLevel:     [javac] Note: Recompile with -Xlint:deprecation for details.
LogPlayLevel:     [javac] 3 warnings
LogPlayLevel: BUILD SUCCESSFUL
LogPlayLevel: Total time: 1 minute 24 seconds
LogPlayLevel: AndroidPlatform.GetAaptPath: Using this aapt: C:/NVPACK/android-sdk-windows\build-tools\24.0.1\aapt.exe
LogPlayLevel: CommandUtils.Run: Run: C:\NVPACK\android-sdk-windows\platform-tools\adb.exe -s HT6940200958 shell "echo $EXTERNAL_STORAGE"
LogPlayLevel: CommandUtils.Run: Run: Took 0.042075s to run adb.exe, ExitCode=0
LogPlayLevel: CommandUtils.Run: Run: C:\NVPACK\android-sdk-windows\platform-tools\adb.exe -s HT6940200958 shell pm list packages com.retrodreamer.DaydreamUE4
LogPlayLevel: CommandUtils.Run: Run: Took 0.9316527s to run adb.exe, ExitCode=0
LogPlayLevel: CommandUtils.Run: Run: C:\NVPACK\android-sdk-windows\platform-tools\adb.exe -s HT6940200958 shell cat /sdcard/UE4Game/DaydreamUE4/APKFileStamp.txt
LogPlayLevel: CommandUtils.Run: Run: Took 0.0505901s to run adb.exe, ExitCode=0
LogPlayLevel: CommandUtils.Run: Run: C:\NVPACK\android-sdk-windows\platform-tools\adb.exe -s HT6940200958 shell am force-stop com.retrodreamer.DaydreamUE4
LogPlayLevel: CommandUtils.Run: Run: Took 0.4122313s to run adb.exe, ExitCode=0
LogPlayLevel: CommandUtils.Run: Run: C:\NVPACK\android-sdk-windows\platform-tools\adb.exe -s HT6940200958 uninstall com.retrodreamer.DaydreamUE4
LogPlayLevel: adb: Success
LogPlayLevel: CommandUtils.Run: Run: Took 0.3681534s to run adb.exe, ExitCode=0
LogPlayLevel: CommandUtils.Run: Run: C:\NVPACK\android-sdk-windows\platform-tools\adb.exe -s HT6940200958 install "D:\src\retrodreamer\DaydreamUE4\Binaries/Android\DaydreamUE4-arm64-es2.apk"
LogPlayLevel: adb: Success
LogPlayLevel: CommandUtils.Run: Run: Took 9.2549247s to run adb.exe, ExitCode=0
LogPlayLevel: CommandUtils.Run: Run: C:\NVPACK\android-sdk-windows\platform-tools\adb.exe -s HT6940200958 shell pm grant com.retrodreamer.DaydreamUE4 android.permission.READ_EXTERNAL_STORAGE
LogPlayLevel: CommandUtils.Run: Run: Took 0.4497974s to run adb.exe, ExitCode=0
LogPlayLevel: CommandUtils.Run: Run: C:\NVPACK\android-sdk-windows\platform-tools\adb.exe -s HT6940200958 shell pm grant com.retrodreamer.DaydreamUE4 android.permission.WRITE_EXTERNAL_STORAGE
LogPlayLevel: CommandUtils.Run: Run: Took 0.3896907s to run adb.exe, ExitCode=0
LogPlayLevel: Project.WriteStageCommandline: Creating UE4CommandLine.txt
LogPlayLevel: CommandUtils.Run: Run: C:\NVPACK\android-sdk-windows\platform-tools\adb.exe -s HT6940200958 push "D:\src\retrodreamer\DaydreamUE4\Saved\StagedBuilds\Android_ASTC\UE4CommandLine.txt" "/sdcard/UE4Game/DaydreamUE4/UE4CommandLine.txt"
LogPlayLevel: CommandUtils.Run: Run: C:\NVPACK\android-sdk-windows\platform-tools\adb.exe -s HT6940200958 push "D:\src\retrodreamer\DaydreamUE4\Saved\StagedBuilds\Android_ASTC\DaydreamUE4\AssetRegistry.bin" "/sdcard/UE4Game/DaydreamUE4/DaydreamUE4/AssetRegistry.bin"
LogPlayLevel: CommandUtils.Run: Run: C:\NVPACK\android-sdk-windows\platform-tools\adb.exe -s HT6940200958 push "D:\src\retrodreamer\DaydreamUE4\Saved\StagedBuilds\Android_ASTC\DaydreamUE4\CookedIniVersion.txt" "/sdcard/UE4Game/DaydreamUE4/DaydreamUE4/CookedIniVersion.txt"
LogPlayLevel: CommandUtils.Run: Run: C:\NVPACK\android-sdk-windows\platform-tools\adb.exe -s HT6940200958 push "D:\src\retrodreamer\DaydreamUE4\Saved\StagedBuilds\Android_ASTC\Engine\GlobalShaderCache-GLSL_ES2.bin" "/sdcard/UE4Game/DaydreamUE4/Engine/GlobalShaderCache-GLSL_ES2.bin"
LogPlayLevel: CommandUtils.Run: Run: C:\NVPACK\android-sdk-windows\platform-tools\adb.exe -s HT6940200958 push "D:\src\retrodreamer\DaydreamUE4\Saved\StagedBuilds\Android_ASTC\Manifest_NonUFSFiles_Android.txt" "/sdcard/UE4Game/DaydreamUE4/Manifest_NonUFSFiles_Android.txt"
LogPlayLevel: CommandUtils.Run: Run: C:\NVPACK\android-sdk-windows\platform-tools\adb.exe -s HT6940200958 push "D:\src\retrodreamer\DaydreamUE4\Saved\StagedBuilds\Android_ASTC\Manifest_UFSFiles_Android.txt" "/sdcard/UE4Game/DaydreamUE4/Manifest_UFSFiles_Android.txt"
LogPlayLevel: adb: [100%] /sdcard/UE4Game/DaydreamUE4/UE4CommandLine.txt
LogPlayLevel: adb: [ 35%] /sdcard/UE4Game/DaydreamUE4/DaydreamUE4/AssetRegistry.bin
LogPlayLevel: adb: [  5%] /sdcard/UE4Game/DaydreamUE4/DaydreamUE4/CookedIniVersion.txt
LogPlayLevel: adb: [100%] /sdcard/UE4Game/DaydreamUE4/Manifest_NonUFSFiles_Android.txt
LogPlayLevel: adb: [ 66%] /sdcard/UE4Game/DaydreamUE4/Manifest_UFSFiles_Android.txt
LogPlayLevel: adb: [ 13%] /sdcard/UE4Game/DaydreamUE4/Engine/GlobalShaderCache-GLSL_ES2.bin
LogPlayLevel: CommandUtils.Run: Run: C:\NVPACK\android-sdk-windows\platform-tools\adb.exe -s HT6940200958 shell rm /sdcard/obb/com.retrodreamer.DaydreamUE4/main.1.com.retrodreamer.DaydreamUE4.obb
LogPlayLevel: adb: rm: /sdcard/obb/com.retrodreamer.DaydreamUE4/main.1.com.retrodreamer.DaydreamUE4.obb: No such file or directory
LogPlayLevel: CommandUtils.Run: Run: Took 0.0606079s to run adb.exe, ExitCode=1
LogPlayLevel: CommandUtils.Run: Run: C:\NVPACK\android-sdk-windows\platform-tools\adb.exe -s HT6940200958 shell "echo 'APK: 11/29/2016 3:26:55 PM' > /sdcard/UE4Game/DaydreamUE4/APKFileStamp.txt"
LogPlayLevel: CommandUtils.Run: Run: Took 0.0420832s to run adb.exe, ExitCode=0
LogPlayLevel: Project.Deploy: ********** DEPLOY COMMAND COMPLETED **********
LogPlayLevel: Project.Run: ********** RUN COMMAND STARTED **********
LogPlayLevel: Project.RunInternal: Starting Client....
LogPlayLevel: CommandUtils.Run: Run: C:\NVPACK\android-sdk-windows\platform-tools\adb.exe -s HT6940200958  shell getprop ro.product.cpu.abi
LogPlayLevel: CommandUtils.Run: Run: Took 0.0540954s to run adb.exe, ExitCode=0
LogPlayLevel: CommandUtils.Run: Run: C:\NVPACK\android-sdk-windows\platform-tools\adb.exe -s HT6940200958 shell dumpsys SurfaceFlinger
LogPlayLevel: CommandUtils.Run: Run: Took 0.0686238s to run adb.exe, ExitCode=0
LogPlayLevel: Apk='D:\src\retrodreamer\DaydreamUE4\Binaries/Android\DaydreamUE4-arm64-es2.apk', ClientApp='D:\src\retrodreamer\DaydreamUE4\Saved\StagedBuilds\Android_ASTC\DaydreamUE4\Binaries\Android\DaydreamUE4', ExeName='D:\src\retrodreamer\DaydreamUE4\Binaries\Android\DaydreamUE4'
LogPlayLevel: CommandUtils.Run: Run: C:\NVPACK\android-sdk-windows\platform-tools\adb.exe -s HT6940200958 logcat -c
LogPlayLevel: Completed Launch On Stage: Deploy Task, Time: 119.898959
LogPlayLevel: CommandUtils.Run: Run: Took 0.0561011s to run adb.exe, ExitCode=0
LogPlayLevel: CommandUtils.Run: Run: C:\NVPACK\android-sdk-windows\platform-tools\adb.exe -s HT6940200958 shell am start -n com.retrodreamer.DaydreamUE4/com.epicgames.ue4.GameActivity
LogPlayLevel: adb: Starting: Intent { cmp=com.retrodreamer.DaydreamUE4/com.epicgames.ue4.GameActivity }
LogPlayLevel: CommandUtils.Run: Run: Took 0.3796775s to run adb.exe, ExitCode=0
LogPlayLevel: CommandUtils.Run: Run: C:\NVPACK\android-sdk-windows\platform-tools\adb.exe -s HT6940200958 logcat -d -s UE4 -s Debug
LogPlayLevel: adb: --------- beginning of main
LogPlayLevel: adb: --------- beginning of system
LogPlayLevel: CommandUtils.Run: Run: Took 0.1823236s to run adb.exe, ExitCode=0
LogPlayLevel: CommandUtils.Run: Run: C:\NVPACK\android-sdk-windows\platform-tools\adb.exe -s HT6940200958 logcat -d
LogPlayLevel: CommandUtils.Run: Run: Took 0.289012s to run adb.exe, ExitCode=0
LogPlayLevel: Project.Run: ********** RUN COMMAND COMPLETED **********
LogPlayLevel: Automation.Execute: BUILD SUCCESSFUL
LogPlayLevel: Completed Launch On Stage: Run Task, Time: 0.751327
LogPlayLevel: Program.Main: AutomationTool exiting with ExitCode=0 (Success)
LogPlayLevel: Completed Launch On Stage: Post Launch Task, Time: 0.000008
LogPlayLevel: Launch On Completed. Time: 188.028124
LogTcpMessaging:Warning: Discovered node '004CB521100B0F1D001B02A6EDCCBFF6' on connection '127.0.0.1:6666'...
LogTcpMessaging:Warning: Lost node '004CB521100B0F1D001B02A6EDCCBFF6' on connection '127.0.0.1:6666'...
LogTcpMessaging:Warning: Discovered node '005E90AD150B0F1D001B0088EE10BA53' on connection '127.0.0.1:6666'...
LogTcpMessaging:Warning: Lost node '005E90AD150B0F1D001B0088EE10BA53' on connection '127.0.0.1:6666'...

Been noticing this as well. Hopefully that can be optimised?

Hi Tim,

This sounds significantly different than what I am seeing with stock 4.14. I did a deep dive on the issue and ended up submitting a pull request with my analysis which you can see here: https://github.com/EpicGames/UnrealEngine/pull/3018

The short form is that the gvr plugins (or adding any C++ code) seemed to be kicking it into a state where multiple steps in the build process would generate a different android manifest. And since a changed manifest kicks off an apk build it causes a significant delay as the apk builds multiple times during a package or launch.

I’m very surprised to hear that it’s working as intended for you on 4.14, I’ve spoken with multiple teams that have hit the issue. If you add C++ code to your project and launch are your times still as fast? (I realize the first launch where it builds the apk will be slower, but we’re seeing it slow on every launch after that even if we make no changes to the project in between launches)

Hi rje and aussieburger,

When I try this packaging for ATC with no GoogleVR plugin and with the GoogleVR plugin enabled and setup for it I get consistent builds that are approximately 1m30s every time. Never really any more or less with or without changes.

When using the launch on feature from the editor viewport these are much quicker to deploy with having to setup the packaged apk, though.

My test isn’t indicating anything taking longer than it should on my end that I see with my tests.

Yeah, I’m not exactly sure. Originally I used the 4.14 Binary version with no c++. Added the C++ source and my builds still come out around the 1m30s mark with the first build and any subsequent ones as well with or without changes.

Sorry for the delay in response Tim,but I reran my test with stock 4.14.1 so we could both be on the same page. Steps and results:

Dev Hardware:
I7 4770k, 16gb ram, gtx980, win10

Android tools installed from Engine/Extras in 4.14

All noted times are what is reported in the Output Log when the launch has completely finished.

Steps (no added source):

  • Load stock 4.14.1 from launcher
  • New project → blank, mobile/tablet, scalable, no starter content
  • Select directory and create
  • Edit → Project Settings
  • Platforms → Android, add a Android Package Name
  • Platforms → Android, Click both ‘Configure Now’ buttons
  • Plug device into computer (Pixel XL, running 7.1.1)
  • Use Launch menu to launch to device
  • Note time: (167s)
  • Stop app on phone and launch again w/o any further changes
  • Note time: (22s)
  • Repeat one more time for good measure:
  • Note time: (20s)

Steps (with added source):

  • File → New C++ class, make an Actor subclass named MyActor
  • Wait while it compiles
  • Stop app on phone and launch
  • Note time: (347s)
  • Stop app on phone and launch again w/o any further changes
  • Note time: (242s)
  • Repeat one more time for good measure:
  • Note time: (237s)

Can you confirm in the second case that you see the APK being built two times? In the output log it would appear as a line that says “Making .apk with ant” followed by several javac lines. This is the part that is being triggered by mismatched manifest settings between the build and deploy steps of launching and what I tried to address in my pull request. With my changes apply the second builds go from 200+ seconds back down to the 20’ish you see in the initial case.