UE5.6.1 hangs up when building for Android

Hi there. I had to forcefully update my project from 5.3.2 to 5.6.1 in order to comply with the new Play Games V2 SDK that Android requires to push updates.

I’ve tested thoroughly that my Android SDK is correctly installed and that it has the correct packages, build tools and such.

This is the string of messages that signals that the build is “hanged” - every few minutes it shows up again with different values on “Time:”.

[2025.10.27-15.54.32:613][ 12]LogEOSSDK: LogEOS: Updating Product SDK Config, Time: 743.091736
[2025.10.27-15.54.32:848][ 26]LogEOSSDK: LogEOS: SDK Config Product Update Request Completed - No Change
[2025.10.27-15.54.32:848][ 27]LogEOSSDK: LogEOS: ScheduleNextSDKConfigDataUpdate - Time: 743.309021, Update Interval: 347.370819

Does anyone know what’s happening here? Is there any way to fix this? I already made a fresh installation of Android with Turnkey and such.

Hello there @Bazztoner!

Checking around the community, this problem seems to be tied to EOS entering a loop for checking SDK updates over and over again. In order to stop the loop, you can temporary disable the EOS plugin for setting up the build (if it’s not required).

Still, since you have recently migrated your project, the most likely cause is old data left in your cache. To perform a cache clear, navigate to your main directory, and delete folders Intermediate, Saved, and Binaries/Android, then allow your project to rebuild.

Thank you, Seba, for the help on this matter.

It indeed fixed that but now I get another constant loop of:

[2025.10.27-20.02.53:245][825]LogShaderCompilers: Display: === FShaderJobCache stats ===
[2025.10.27-20.02.53:245][825]LogShaderCompilers: Display: Total job queries 7,277, among them cache hits 10 (0.14%), DDC hits 4,035 (55.45%), Duplicates 2,138 (29.38%)
[2025.10.27-20.02.53:245][825]LogShaderCompilers: Display: Tracking 5,129 distinct input hashes that result in 4,643 distinct outputs (90.52%)
[2025.10.27-20.02.53:245][825]LogShaderCompilers: Display: RAM used: 19.62 MiB of 1.60 GiB budget. Usage: 1.20%
[2025.10.27-20.02.53:245][825]LogShaderCompilers: Display: === Shader Compilation stats ===
[2025.10.27-20.02.53:245][825]LogShaderCompilers: Display: Shaders Compiled: 1,094
[2025.10.27-20.02.53:245][825]LogShaderCompilers: Display: Jobs assigned 1,094, completed 1,094 (100%)
[2025.10.27-20.02.53:245][825]LogShaderCompilers: Display: Average time worker was idle: 106.68 s
[2025.10.27-20.02.53:245][825]LogShaderCompilers: Display: Time job spent in pending queue: average 43.80 s, longest 143.43 s
[2025.10.27-20.02.53:245][825]LogShaderCompilers: Display: Job execution time: average 14.84 s, max 60.90 s
[2025.10.27-20.02.53:245][825]LogShaderCompilers: Display: Job life time (pending + execution): average 58.64 s, max 148.76
[2025.10.27-20.02.53:245][825]LogShaderCompilers: Display: Shader code size: total 18.053 MiB, numShaders 1,138, average 16.244 KiB, min 200 B, max 78.848 KiB
[2025.10.27-20.02.53:245][825]LogShaderCompilers: Display: Time at least one job was in flight (either pending or executed): 423.33 s
[2025.10.27-20.02.53:245][825]LogShaderCompilers: Display: Mutex wait stall in FShaderJobCache::SubmitJobs: 3.19%
[2025.10.27-20.02.53:245][825]LogShaderCompilers: Display: Jobs were issued in 373 batches (only local compilation was used), average 2.93 jobs/batch
[2025.10.27-20.02.53:245][825]LogShaderCompilers: Display: Average processing rate: 2.58 jobs/sec
[2025.10.27-20.02.53:245][825]LogShaderCompilers: Display: Total thread time: 2,300.932 s
[2025.10.27-20.02.53:245][825]LogShaderCompilers: Display: Total thread preprocess time: 84.216 s
[2025.10.27-20.02.53:245][825]LogShaderCompilers: Display: Percentage time preprocessing: 3.66%
[2025.10.27-20.02.53:245][825]LogShaderCompilers: Display: Effective parallelization: 5.44 (times faster than compiling all shaders on one thread). Compare with number of workers: 8 - 0.679420
[2025.10.27-20.02.53:245][825]LogShaderCompilers: Display: Top 5 most expensive shader types by average time:
[2025.10.27-20.02.53:245][825]LogShaderCompilers: Display: FRenderVolumetricCloudRenderViewCS (compiled 68 times, average 6.16 sec, max 11.20 sec, min 3.16 sec)
[2025.10.27-20.02.53:245][825]LogShaderCompilers: Display: TBasePassPSFPrecomputedVolumetricLightmapLightingPolicySkylight (compiled 44 times, average 5.26 sec, max 6.90 sec, min 2.52 sec)
[2025.10.27-20.02.53:245][825]LogShaderCompilers: Display: FCloudRenderViewPS111 (compiled 1 times, average 5.18 sec, max 5.18 sec, min 5.18 sec)
[2025.10.27-20.02.53:245][825]LogShaderCompilers: Display: TBasePassPSTDistanceFieldShadowsAndLightMapPolicyHQSkylight (compiled 10 times, average 5.06 sec, max 6.52 sec, min 2.95 sec)
[2025.10.27-20.02.53:245][825]LogShaderCompilers: Display: FCloudRenderViewPS011 (compiled 1 times, average 5.04 sec, max 5.04 sec, min 5.04 sec)
[2025.10.27-20.02.53:245][825]LogShaderCompilers: Display: Top 5 shader types by total compile time:
[2025.10.27-20.02.53:245][825]LogShaderCompilers: Display: FRenderVolumetricCloudRenderViewCS - 18.21% of total time (compiled 68 times, average 6.16 sec, max 11.20 sec, min 3.16 sec)
[2025.10.27-20.02.53:245][825]LogShaderCompilers: Display: TBasePassPSFPrecomputedVolumetricLightmapLightingPolicySkylight - 10.05% of total time (compiled 44 times, average 5.26 sec, max 6.90 sec, min 2.52 sec)
[2025.10.27-20.02.53:245][825]LogShaderCompilers: Display: TBasePassPSFNoLightMapPolicy - 5.54% of total time (compiled 52 times, average 2.45 sec, max 5.27 sec, min 0.62 sec)
[2025.10.27-20.02.53:245][825]LogShaderCompilers: Display: TBasePassPSFNoLightMapPolicySkylight - 4.72% of total time (compiled 26 times, average 4.18 sec, max 6.25 sec, min 2.25 sec)
[2025.10.27-20.02.53:245][825]LogShaderCompilers: Display: TBasePassPSFCachedPointIndirectLightingPolicySkylight - 4.59% of total time (compiled 23 times, average 4.59 sec, max 5.98 sec, min 2.43 sec)
[2025.10.27-20.02.53:245][825]LogShaderCompilers: Display: === Material stats ===
[2025.10.27-20.02.53:245][825]LogShaderCompilers: Display: Materials Cooked: 0
[2025.10.27-20.02.53:245][825]LogShaderCompilers: Display: Materials Translated: 362
[2025.10.27-20.02.53:245][825]LogShaderCompilers: Display: Material Total Translate Time: 0.46 s
[2025.10.27-20.02.53:245][825]LogShaderCompilers: Display: Material Translation Only: 0.28 s (61%)
[2025.10.27-20.02.53:245][825]LogShaderCompilers: Display: Material DDC Serialization Only: 0.00 s (0%)
[2025.10.27-20.02.53:245][825]LogShaderCompilers: Display: Material Cache Hits: 0 (0%)
[2025.10.27-20.02.53:245][825]LogShaderCompilers: Display: ================================================
[2025.10.27-20.49.48:775][747]LogDerivedDataCache: C:/Users/bazzt/AppData/Local/UnrealEngine/Common/DerivedDataCache: Maintenance finished in +00:00:37.205 and deleted 0 files with total size 0 MiB and 0 empty folders. Scanned 19531 files in 21358 folders with total size 1530 MiB.

Any help is greatly appreciated!

Hello again!

Good, we are making progress. What I see from your log, is that your shaders are compiling successfully (1094 completed), but the build keeps restarting the process, thus creating the new loop. Your shader cache is being rebuilt constantly, and that should be related to the very same thing we were working before, the remains of old data, post update.

So, since the last update, we cleared Intermediate, Saved, and Binaries/Android. Now we need to clear the shader cache itself, and allow it to fully recompile. To do so, close UE, navigate to the following location, and delete DerivedDataCache:

C:\Users\<YourUser>\AppData\Local\UnrealEngine\Common\DerivedDataCache

As well, since your “Saved” folder has been re-created, only remove the following sub-folders:

<YourProject>\Saved\Cooked
<YourProject>\Saved\StagedBuilds
<YourProject>\Saved\ShaderDebugInfo

After that, re-open UE, and shaders should recompile from scratch, which should stop the loop. Hope this helps, and good luck!

Hi again! I was AFK for a long while and I’m back at developing this game.
After everything it still hangs up but now with even less info.

I’m uploading the whole log as a .txt file here.

The last lines of the log are the following:

[2025.11.10-18.48.41:590][ 94]UATHelper: Packaging (Android (ETC2)): 	(Function SceneTextureAverage) (Node SceneColor) Node not supported in feature level ES3_1. SM5 required.
[2025.11.10-18.48.41:594][ 94]PackagingResults: Warning: [AssetLog] C:\PhoenixDev\Projects\ToweringSaviour\Content\Characters\IggyScorchBoss\Materials\M_Eye_Occlusion.uasset: Failed to compile Material for platform GLSL_ES3_1_ANDROID, Default Material will be used in game.
[2025.11.10-18.48.41:601][ 95]UATHelper: Packaging (Android (ETC2)): LogMaterial: Display: Missing cached shadermap for M_Eye_Occlusion in OPENGL_ES3_1_ANDROID, High, ES3_1, Game (DDC key hash: 82a23ddae8506ad3a6d61bceec5ceb0f4e6ccdfb), compiling.
[2025.11.10-18.48.41:612][ 96]UATHelper: Packaging (Android (ETC2)): LogMaterial: Warning: [AssetLog] C:\PhoenixDev\Projects\ToweringSaviour\Content\Characters\ParagonGideon\Characters\Global\Eyes\Materials\M_Eye_Occlusion.uasset: Failed to compile Material for platform GLSL_ES3_1_ANDROID, Default Material will be used in game.
[2025.11.10-18.48.41:612][ 96]UATHelper: Packaging (Android (ETC2)): 	(Function SceneTextureAverage) (Node SceneColor) Node not supported in feature level ES3_1. SM5 required.
[2025.11.10-18.48.41:612][ 96]UATHelper: Packaging (Android (ETC2)): 	(Function SceneTextureAverage) (Node SceneColor) Node not supported in feature level ES3_1. SM5 required.
[2025.11.10-18.48.41:612][ 96]UATHelper: Packaging (Android (ETC2)): 	(Function SceneTextureAverage) (Node SceneColor) Node not supported in feature level ES3_1. SM5 required.
[2025.11.10-18.48.41:612][ 96]UATHelper: Packaging (Android (ETC2)): 	(Function SceneTextureAverage) (Node SceneColor) Node not supported in feature level ES3_1. SM5 required.
[2025.11.10-18.48.41:612][ 96]UATHelper: Packaging (Android (ETC2)): 	(Function SceneTextureAverage) (Node SceneColor) Node not supported in feature level ES3_1. SM5 required.
[2025.11.10-18.48.41:612][ 96]UATHelper: Packaging (Android (ETC2)): 	(Function SceneTextureAverage) (Node SceneColor) Node not supported in feature level ES3_1. SM5 required.
[2025.11.10-18.48.41:612][ 96]UATHelper: Packaging (Android (ETC2)): 	(Function SceneTextureAverage) (Node SceneColor) Node not supported in feature level ES3_1. SM5 required.
[2025.11.10-18.48.41:612][ 96]UATHelper: Packaging (Android (ETC2)): 	(Function SceneTextureAverage) (Node SceneColor) Node not supported in feature level ES3_1. SM5 required.
[2025.11.10-18.48.41:612][ 96]UATHelper: Packaging (Android (ETC2)): LogMaterial: Warning: Cooking a material resource (in M_Eye_Occlusion hierarchy) that doesn't have a valid ShaderMap! Shadermap pointer is null.
[2025.11.10-18.48.41:618][ 96]PackagingResults: Warning: [AssetLog] C:\PhoenixDev\Projects\ToweringSaviour\Content\Characters\ParagonGideon\Characters\Global\Eyes\Materials\M_Eye_Occlusion.uasset: Failed to compile Material for platform GLSL_ES3_1_ANDROID, Default Material will be used in game.
[2025.11.10-18.48.41:618][ 96]PackagingResults: Warning: Cooking a material resource (in M_Eye_Occlusion hierarchy) that doesn't have a valid ShaderMap! Shadermap pointer is null.
[2025.11.10-18.48.41:689][100]UATHelper: Packaging (Android (ETC2)): LogMaterial: Warning: Cooking a material resource (in M_Eye_Occlusion hierarchy) that doesn't have a valid ShaderMap! Shadermap pointer is null.
[2025.11.10-18.48.41:689][100]UATHelper: Packaging (Android (ETC2)): LogMaterial: Display: Missing cached shadermap for M_Eye_Occlusion in OPENGL_ES3_1_ANDROID, High, ES3_1, Game (DDC key hash: 82a23ddae8506ad3a6d61bceec5ceb0f4e6ccdfb), compiling.
[2025.11.10-18.48.41:689][100]PackagingResults: Warning: Cooking a material resource (in M_Eye_Occlusion hierarchy) that doesn't have a valid ShaderMap! Shadermap pointer is null.
[2025.11.10-18.48.41:711][101]UATHelper: Packaging (Android (ETC2)): LogMaterial: Warning: [AssetLog] C:\PhoenixDev\Projects\ToweringSaviour\Content\Characters\ParagonCountess\Characters\Global\Eyes\Materials\M_Eye_Occlusion.uasset: Failed to compile Material for platform GLSL_ES3_1_ANDROID, Default Material will be used in game.
[2025.11.10-18.48.41:711][101]UATHelper: Packaging (Android (ETC2)): 	(Function SceneTextureAverage) (Node SceneColor) Node not supported in feature level ES3_1. SM5 required.
[2025.11.10-18.48.41:711][101]UATHelper: Packaging (Android (ETC2)): 	(Function SceneTextureAverage) (Node SceneColor) Node not supported in feature level ES3_1. SM5 required.
[2025.11.10-18.48.41:711][101]UATHelper: Packaging (Android (ETC2)): 	(Function SceneTextureAverage) (Node SceneColor) Node not supported in feature level ES3_1. SM5 required.
[2025.11.10-18.48.41:711][101]UATHelper: Packaging (Android (ETC2)): 	(Function SceneTextureAverage) (Node SceneColor) Node not supported in feature level ES3_1. SM5 required.
[2025.11.10-18.48.41:711][101]UATHelper: Packaging (Android (ETC2)): 	(Function SceneTextureAverage) (Node SceneColor) Node not supported in feature level ES3_1. SM5 required.
[2025.11.10-18.48.41:711][101]UATHelper: Packaging (Android (ETC2)): 	(Function SceneTextureAverage) (Node SceneColor) Node not supported in feature level ES3_1. SM5 required.
[2025.11.10-18.48.41:711][101]UATHelper: Packaging (Android (ETC2)): 	(Function SceneTextureAverage) (Node SceneColor) Node not supported in feature level ES3_1. SM5 required.
[2025.11.10-18.48.41:711][101]UATHelper: Packaging (Android (ETC2)): 	(Function SceneTextureAverage) (Node SceneColor) Node not supported in feature level ES3_1. SM5 required.
[2025.11.10-18.48.41:717][101]PackagingResults: Warning: [AssetLog] C:\PhoenixDev\Projects\ToweringSaviour\Content\Characters\ParagonCountess\Characters\Global\Eyes\Materials\M_Eye_Occlusion.uasset: Failed to compile Material for platform GLSL_ES3_1_ANDROID, Default Material will be used in game.
[2025.11.10-18.48.42:812][165]UATHelper: Packaging (Android (ETC2)): LogMaterial: Warning: Cooking a material resource (in M_Eye_Occlusion hierarchy) that doesn't have a valid ShaderMap! Shadermap pointer is null.
[2025.11.10-18.48.42:813][165]PackagingResults: Warning: Cooking a material resource (in M_Eye_Occlusion hierarchy) that doesn't have a valid ShaderMap! Shadermap pointer is null.
[2025.11.10-18.48.45:003][297]UATHelper: Packaging (Android (ETC2)): LogCook: Display: Cooked packages 691 Packages Remain 2194 Total 2885
[2025.11.10-18.48.47:046][417]UATHelper: Packaging (Android (ETC2)): LogCook: Display: Cooked packages 736 Packages Remain 2149 Total 2885
[2025.11.10-18.48.49:148][539]UATHelper: Packaging (Android (ETC2)): LogCook: Display: Cooked packages 925 Packages Remain 1960 Total 2885
[2025.11.10-18.49.18:069][273]UATHelper: Packaging (Android (ETC2)): LogCook: Display: Cooked packages 1245 Packages Remain 1640 Total 2885
[2025.11.10-18.49.18:069][273]UATHelper: Packaging (Android (ETC2)): LogCook: Display: Garbage collection triggered (Soft). Triggered by conditions:
[2025.11.10-18.49.18:069][273]UATHelper: Packaging (Android (ETC2)):   CookSettings.SoftGCTimeTrigger: Periodic triggering of SoftGC: SoftGCTimeFractionBudget == 0.050. TimeSinceLastGCSeconds == 51.544. CurrentTimeBudget == 2.713. ExpectedDuration == 2.678.
[2025.11.10-18.49.18:069][273]UATHelper: Packaging (Android (ETC2)): LogCook: Display: Cooked packages 1280 Packages Remain 1605 Total 2885
[2025.11.10-18.49.18:069][273]UATHelper: Packaging (Android (ETC2)): LogCook: Display: Cook Diagnostics: OpenFileHandles=6041, VirtualMemory=4895MiB, VirtualMemoryAvailable=5896MiB
[2025.11.10-19.14.31:503][922]LogWindows: LaunchFileInExternalEditor C:/PhoenixDev/Projects/ToweringSaviour/Saved/Logs/ToweringSaviour.log 
[2025.11.10-19.14.31:641][922]LogWindows: Launch application code for C:/PhoenixDev/Projects/ToweringSaviour/Saved/Logs/ToweringSaviour.log : 42

Hello again!

Dang, it’s a stubborn issue! Glad that you are still working in your game, despite the problem. Now, checking through your new log, indeed, there’s even less information on it, as there’s nothing truly wrong at first glance.

What you do have, are multiple repeated warnings tied to a SceneColor node:

[2025.11.10-18.48.41:590][ 94]UATHelper: Packaging (Android (ETC2)): (Function SceneTextureAverage) (Node SceneColor) Node not supported in feature level ES3_1. SM5 required.

And these nodes seem to be tied to a Paragon character asset:

C:\PhoenixDev\Projects\ToweringSaviour\Content\Characters\ParagonCountess\Characters\Global\Eyes\Materials\M_Eye_Occlusion.uasset: Failed to compile Material for platform GLSL_ES3_1_ANDROID, Default Material will be used in game.

These constant checks going nowhere can cause your project to just hang, and never finish. Besides that, there’s no sign of the previous issue, the EOS loop, nor are there any SDK conflicts.

So, I would remove the assets tied to the warnings (the Paragon assets). Yet, if you need them in your scene, then search for the affected nodes (should be SceneColor and SceneTexture), and either remove them, or replace them with a flat color texture.

You can also test disabling OpenGL support in your project settings (keep Vulcan enabled):

This should bypass the shader cook that’s causing the hang here. And of course, after all these changes, I would suggest repeating the clear cache from our previous post, deleting the same folders as before:

C:\Users\<YourUser>\AppData\Local\UnrealEngine\Common\DerivedDataCache
<YourProject>\Saved\Cooked
<YourProject>\Saved\StagedBuilds
<YourProject>\Saved\ShaderDebugInfo

Open UE again, allow to rebuild one more time, then test the build again. Hopefully, this time it will work :+1:

Thank you so much, Seba! Enabling Vulkan and removing OpenGL worked wonders.

I had another issue with building for Android (Java shenaningans) but I had to search both the project and the engine for .java files and change activityContext.runOnUiThread for _activity.runOnUiThread - now I’m just fixing deprecated Google libraries but the game builds just fine.

Thank you so much again for your help!

Hey, were you able to fix the loop? I’m having the same problem… and disabling OpenGL would make you lose compatibility with many phones, right?