Android build crashes after splash screen on some devices, when using 2017.3.0f3 (log)

I’ve recently updated from 2017.2 to to 2017.3.0f3, and after the update Android builds die immediately after the splash screen on Galaxy S5 (though it continues to work fine on other devices). Below are the Unity sections of the Android log. Anyone out there who’s familiar with Android see what the cause may be?


The log begins the same way on devices that work fine, as well as the one that crashes:

02-10 06:36:10.475   868  2099 V WindowManager: addAppToken: AppWindowToken{6a43fb6 token=Token{46db51 ActivityRecord{f488878 u0 com.IronZog.WarOfConquest/com.unity3d.player.UnityPlayerActivity t1170}}} to stack=1 task=1170 at 0
02-10 06:36:10.525   868  1395 I ActivityManager: Start proc 28651:com.IronZog.WarOfConquest/u0a313 for activity com.IronZog.WarOfConquest/com.unity3d.player.UnityPlayerActivity
02-10 06:36:11.035 28651 28651 I Unity   : onResume
02-10 06:36:11.055   868  1675 D ISSUE_DEBUG: InputChannelName : 82fd943 com.IronZog.WarOfConquest/com.unity3d.player.UnityPlayerActivity
02-10 06:36:11.165 28651 28651 D Unity   : SetWindow 0 0xb3b3b408
02-10 06:36:11.165 28651 28651 D Unity   : SetWindow 0 0xb3b3b408
02-10 06:36:11.195   868  1395 V WindowStateAnimator: Finishing drawing window Window{82fd943 u0 d0 com.IronZog.WarOfConquest/com.unity3d.player.UnityPlayerActivity}: mDrawState=DRAW_PENDING
02-10 06:36:11.195 28651 28651 I Unity   : windowFocusChanged: true
02-10 06:36:11.205   868  1122 I ActivityManager: Displayed com.IronZog.WarOfConquest/com.unity3d.player.UnityPlayerActivity: +696ms
02-10 06:36:11.205   868  1122 I Timeline: Timeline: Activity_windows_visible id: ActivityRecord{f488878 u0 com.IronZog.WarOfConquest/com.unity3d.player.UnityPlayerActivity t1170} time:73647214
02-10 06:36:11.245   868  2109 V WindowStateAnimator: Finishing drawing window Window{82fd943 u0 d0 com.IronZog.WarOfConquest/com.unity3d.player.UnityPlayerActivity}: mDrawState=HAS_DRAWN
02-10 06:36:11.255 28651 28666 D Unity   : [VFS] Mount /data/app/com.IronZog.WarOfConquest-2/base.apk
02-10 06:36:11.455 28651 28666 I Unity   : SystemInfo CPU = ARMv7 VFPv3 NEON, Cores = 4, Memory = 1705mb
02-10 06:36:11.455 28651 28666 I Unity   : SystemInfo ARM big.LITTLE configuration: 4 big (mask: 15), 0 little (mask: 0)
02-10 06:36:11.455 28651 28666 I Unity   : ApplicationInfo com.IronZog.WarOfConquest version 1.0 build 99ef20c7-2074-4b23-959d-d1eed27c064a
02-10 06:36:11.455 28651 28666 I Unity   : Built from '2017.3/staging' branch, Version '2017.3.0f3 (a9f86dcd79df)', Build type 'Development', Scripting Backend 'mono'
02-10 06:36:11.455 28651 28666 D Unity   : [EGL] Attaching window :0xb3b3b408
02-10 06:36:11.465 28651 28666 D Unity   : Unable to find library path for 'monobdwgc-2.0'.
02-10 06:36:11.465   868  1004 D StatusBarManagerService: manageDisableList userId=0 what=0x0 pkg=Window{82fd943 u0 d0 com.IronZog.WarOfConquest/com.unity3d.player.UnityPlayerActivity}
02-10 06:36:11.505 28651 28666 D Unity   : Mono path[0] = '/data/app/com.IronZog.WarOfConquest-2/base.apk/assets/bin/Data/Managed'
02-10 06:36:11.505 28651 28666 D Unity   : Mono config path = 'assets/bin/Data/Managed/etc'
02-10 06:36:11.515 28651 28666 D Unity   : PlayerConnection initialized from /data/app/com.IronZog.WarOfConquest-2/base.apk/assets/bin/Data (debug = 0)
02-10 06:36:11.515 28651 28666 D Unity   : PlayerConnection initialized network socket : 0.0.0.0 55303
02-10 06:36:11.515 28651 28666 D Unity   : PlayerConnection initialized unix socket : Unity-com.IronZog.WarOfConquest
02-10 06:36:11.525 28651 28666 D Unity   : Multi-casting "[IP] 192.168.0.7 [Port] 55303 [Flags] 2 [Guid] 658683564 [EditorId] 1070311946 [Version] 1048832 [Id] AndroidPlayer(samsung_SM-G900W8@192.168.0.7) [Debug] 0" to [225.0.0.222:54997]...
02-10 06:36:11.525 28651 28666 D Unity   : Started listening to [0.0.0.0:55303]
02-10 06:36:11.635 28651 28666 D Unity   : InitializeScriptEngine OK (9c104ee0)
02-10 06:36:11.635 28651 28666 D Unity   : PlayerConnection already initialized - listening to [0.0.0.0:55303]
02-10 06:36:11.695 28651 28666 D Unity   : PlayerInitEngineNoGraphics OK
02-10 06:36:11.695 28651 28666 D Unity   : AndroidGraphics::Startup window =  0xb3b3b408
02-10 06:36:11.695 28651 28666 D Unity   : [EGL] Attaching window :0xb3b3b408
02-10 06:36:11.705 28651 28666 D Unity   : [EGL] Request: ES 3.1+AEP RGB0 000 0/0
02-10 06:36:11.705 28651 28666 D Unity   : [EGL] Checking ES 3.1 support...
02-10 06:36:11.705 28651 28666 D Unity   : [EGL] ES3.1 not supported
02-10 06:36:11.705 28651 28666 D Unity   : [EGL] Request: ES 3.1 RGB0 000 0/0
02-10 06:36:11.705 28651 28666 D Unity   : [EGL] Request: ES 3.0 RGB0 000 0/0
02-10 06:36:11.705 28651 28666 W Adreno-EGL: <qeglDrvAPI_eglGetConfigAttrib:607>: EGL_BAD_ATTRIBUTE
02-10 06:36:11.705 28651 28666 W Adreno-EGL: <qeglDrvAPI_eglGetConfigAttrib:607>: EGL_BAD_ATTRIBUTE
02-10 06:36:11.705 28651 28666 D Unity   : [EGL] Found: ID[1] ES 3.0 RGB16 565 0/0
02-10 06:36:11.715 28651 28666 D libEGL  : eglInitialize EGLDisplay = 0x9de7ef54
02-10 06:36:11.715 28651 28666 D Unity   : [EGL] Request: ES 3.1+AEP RGB0 000 0/0
02-10 06:36:11.715 28651 28666 D Unity   : [EGL] Request: ES 3.1 RGB0 000 0/0
02-10 06:36:11.715 28651 28666 D Unity   : [EGL] Request: ES 3.0 RGB0 000 0/0
02-10 06:36:11.715 28651 28666 D Unity   : [EGL] Found: ID[1] ES 3.0 RGB16 565 0/0
02-10 06:36:11.725 28651 28666 D Unity   : [EGL] Request: ES 3.0 RGBA32 8888 0/0
02-10 06:36:11.725 28651 28666 D Unity   : [EGL] Found: ID[5] ES 3.0 RGBA32 8888 0/0 AFBT
02-10 06:36:11.735 28651 28666 D Unity   : ANativeWindow: (1080/1920) RequestedResolution: (0/0) RenderingResolution: (675/1200) EGLSurface: (675/1200)
02-10 06:36:11.745 28651 28666 D Unity   : Renderer: Adreno (TM) 330
02-10 06:36:11.745 28651 28666 D Unity   : Vendor:   Qualcomm
02-10 06:36:11.745 28651 28666 D Unity   : Version:  OpenGL ES 3.0 V@140.0 AU@  (GIT@Ia10634f51b)
02-10 06:36:11.745 28651 28666 D Unity   : GLES:     3
02-10 06:36:11.745 28651 28666 D Unity   :  GL_AMD_compressed_ATC_texture GL_AMD_performance_monitor GL_AMD_program_binary_Z400 GL_EXT_debug_label GL_EXT_debug_marker GL_EXT_discard_framebuffer GL_EXT_robustness GL_EXT_texture_format_BGRA8888 GL_EXT_texture_type_2_10_10_10_REV GL_NV_fence GL_OES_compressed_ETC1_RGB8_texture GL_OES_depth_texture GL_OES_depth24 GL_OES_EGL_image GL_OES_EGL_sync GL_OES_EGL_image_external GL_OES_element_index_uint GL_OES_fbo_render_mipmap GL_OES_fragment_precision_high GL_OES_get_program_binary GL_OES_packed_depth_stencil GL_OES_depth_texture_cube_map GL_OES_rgb8_rgba8 GL_OES_standard_derivatives GL_OES_texture_3D GL_OES_texture_float GL_OES_texture_half_float GL_OES_texture_half_float_linear GL_OES_texture_npot GL_OES_vertex_half_float GL_OES_vertex_type_10_10_10_2 GL_OES_vertex_array_object GL_QCOM_alpha_test GL_QCOM_binning_control GL_QCOM_driver_control GL_QCOM_perfmon_global_mode GL_QCOM_extended_get GL_QCOM_extended_get2 GL_QCOM_tiled_rendering GL_QCOM_writeonly_rendering GL_EXT_sRGB GL_EXT_sRGB_write_control GL_EXT
02-10 06:36:11.745 28651 28666 D Unity   : _texture_sRGB_decode GL_EXT_texture_filter_anisotropic GL_EXT_multisampled_render_to_texture GL_EXT_color_buffer_float GL_EXT_color_buffer_half_float GL_EXT_disjoint_timer_query
02-10 06:36:11.755 28651 28666 D Unity   : OPENGL LOG: Creating OpenGL ES 3.0 graphics device ; Context level  <OpenGL ES 3.0> ; Context handle -1700060800
02-10 06:36:11.755 28651 28666 D Unity   : [EGL] Attaching window :0xb3b3b408
02-10 06:36:11.765 28651 28666 D Unity   : Requested framebuffer: resolution[675x1200], rgba[8/8/8/8], depth+stencil[on], samples[1]
02-10 06:36:11.765 28651 28666 D Unity   : Created framebuffer: resolution[675x1200], rgba[8/8/8/8], depth+stencil[24/8], samples[0] 
02-10 06:36:11.765 28651 28666 D Unity   : [EGL] Attaching window :0xb3b3b408
02-10 06:36:11.765 28651 28666 D Unity   : Initialize engine version: 2017.3.0f3 (a9f86dcd79df)
02-10 06:36:11.805 28651 28666 D Unity   : AudioManager: Selecting AudioTrack output...
02-10 06:36:11.825 28651 28666 D Unity   : Begin MonoManager ReloadAssembly
02-10 06:36:12.285 28651 28666 D Unity   : - Completed reload, in  0.468 seconds
02-10 06:36:13.065 28651 28666 D Unity   : WARNING: Shader 
02-10 06:36:13.065 28651 28666 D Unity   : Unsupported: 'Hidden/BlitToDepth' - Pass '' has no vertex shader
02-10 06:36:13.065 28651 28666 D Unity   : WARNING: Shader 
02-10 06:36:13.065 28651 28666 D Unity   : Unsupported: 'Hidden/BlitToDepth' - Setting to default shader.
02-10 06:36:13.065 28651 28666 D Unity   : WARNING: Shader 
02-10 06:36:13.065 28651 28666 D Unity   : Unsupported: 'Hidden/BlitToDepth_MSAA' - Pass '' has no vertex shader
02-10 06:36:13.065 28651 28666 D Unity   : WARNING: Shader 
02-10 06:36:13.065 28651 28666 D Unity   : Unsupported: 'Hidden/BlitToDepth_MSAA' - Setting to default shader.
02-10 06:36:13.085 28651 28666 D Unity   : PlayerInitEngineGraphics OK
02-10 06:36:13.085 28651 28666 D Unity   : Found 17 native sensors
02-10 06:36:13.095 28651 28666 D Unity   : Sensor :        Accelerometer ( 1) ; 0.000599 / 0.00s ; MPU6500 Acceleration Sensor / Invensense 
02-10 06:36:13.105 28651 28666 D Unity   : Sensor :        Accelerometer ( 1) ; 0.000599 / 0.00s ; MPU6500 Acceleration Sensor / Invensense 
02-10 06:36:13.165 28651 28666 D Unity   : ANativeWindow: (1080/1920) RequestedResolution: (0/0) RenderingResolution: (675/1200) EGLSurface: (675/1200)

At this point the logs diverge. Here’s the next few lines on the device where it works fine:


D/Unity   (20824): Setting up 1 worker threads for Enlighten.
D/Unity   (20824):   Thread -> id: ffffffffad187a80 -> priority: 1 
D/Unity   (20824): UnloadTime: 104.248000 ms
D/Unity   (20824): UUID: 80e1d822554f5ef9 => cb8d6fcd3a66ca0c96f104c673ac44f6
D/Unity   (20824): Unloading 10 Unused Serialized files (Serialized files now loaded: 0)
D/Unity   (20824): System memory in use before: 77.7 MB.
D/Unity   (20824): System memory in use after: 76.5 MB.
D/Unity   (20824): 
D/Unity   (20824): Unloading 11 unused Assets to reduce memory usage. Loaded Objects now: 22389.
D/Unity   (20824): Total: 283.447000 ms (FindLiveObjects: 13.123000 ms CreateObjectMapping: 5.035000 ms MarkObjects: 169.220000 ms  DeleteObjects: 96.039000 ms)
D/Unity   (20824): 
D/Unity   (20824): Sensor :        Accelerometer ( 1) ; 0.000599 / 0.01s ; K330 3-axis Accelerometer / STMicroelectronics 
D/Unity   (20824): Choreographer available: Enabling VSYNC timing
I/Unity   (20824): AttemptFetchInfo() called

… and here’s the next few lines on the device where it crashes instead:


02-10 06:36:13.205   311   311 D libEGL  : eglInitialize EGLDisplay = 0xbedbf364
02-10 06:36:13.255   311   311 D libEGL  : eglInitialize EGLDisplay = 0xbedbf364
02-10 06:36:13.285   311   311 D libEGL  : eglInitialize EGLDisplay = 0xbedbf364
02-10 06:36:18.825   311   365 D libEGL  : eglTerminate EGLDisplay = 0xb694164c
02-10 06:36:18.825   311   365 D libEGL  : eglTerminate EGLDisplay = 0xb694164c
02-10 06:36:19.215   868  1270 D GraphicsStats: Buffer count: 12
02-10 06:36:19.215   311  2039 D libEGL  : eglTerminate EGLDisplay = 0xb173e6fc
02-10 06:36:19.215   868   881 I ActivityManager: Process com.IronZog.WarOfConquest (pid 28651)(adj 0) has died(364,189)
02-10 06:36:19.215   868   881 D ActivityManager: cleanUpApplicationRecord -- 28651
02-10 06:36:19.215   868   882 I WindowState: WIN DEATH: Window{82fd943 u0 d0 com.IronZog.WarOfConquest/com.unity3d.player.UnityPlayerActivity}
02-10 06:36:19.215   868   882 W WindowManager: Force-removing child win Window{a9480f9 u0 d0 SurfaceView} from container Window{82fd943 u0 d0 com.IronZog.WarOfConquest/com.unity3d.player.UnityPlayerActivity}

Thanks for the help,

-Mike

Looks like there is an Graphics problem that terminates the app based on the very last libEGL statements. In the Players settings are you using Auto Detect Graphics with OpenGLES 3.0, 2.1, & Vulcan and any other graphics parameters. Begin with the player graphics settings like colour space etc, min API level etc.

@spokrock you pointed me in the right direction. The solution was to un-check “Auto graphics API” (Under Android Player Settings > Other Settings) and re-order the list of APIs so that OpenGLES2 is above OpenGLES3.