2019.4.9f1 game crushes on startup in Android 12.
I’ve run the Firebase test lab Robo test with Google Pixel 5 (API 30), Pixel 6 (API 31), Pixel 6a (API 32), and Pixel 7 (API 33).
Pixel 5 passes the test fine. But newer devices starting from Android 12 API 31 and up are giving similar crash reports:
Fatal exception
at libunity.GfxDeviceVK::GfxDeviceVK(MemLabelId const&, vk::Instance const&)(GfxDeviceVK:1848)
FATAL EXCEPTION: UnityMain
Process: com.CATana.HeroicDice, PID: 19139
java.lang.Error: *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
Version '2019.4.9f1 (50fe8a171dd9)', Build type 'Development', Scripting Backend 'il2cpp', CPU 'arm64-v8a'
Revision: 'MP1.0'
ABI: 'arm64'
Timestamp: 2022-12-28 03:40:19-0800
pid: 19139, tid: 19170, name: UnityMain >>> com.CATana.HeroicDice <<<
uid: 10232
signal 11 (SIGSEGV), code 2 (SEGV_ACCERR), fault addr 0x79c402c3e8
x0 00000079c3e27330 x1 b400007931ba2ff0 x2 0000005400000000 x3 0000000000000046
x4 0000000000080000 x5 0000000000000004 x6 0000e37c0000df2c x7 0000e3c10000dfb6
x8 00000079c4027330 x9 b400007931c23000 x10 0000000000000000 x11 0000000000000000
x12 0000000000000092 x13 0000000000000000 x14 0000000000000001 x15 0000000000000000
x16 00000079c3e06a90 x17 0000007cd0166894 x18 0000000000000032 x19 0000005400000000
x20 b400007931ba2ff0 x21 00000079c3e27328 x22 b400007b29d998d0 x23 b400007b29d998c8
x24 0000000000000000 x25 00000000000002a0 x26 0000000000000000 x27 00000079c3e0a738
x28 b400007b29d99ba0 x29 0000000000000002
sp 00000079c572f890 lr 00000079c2913074 pc 00000079c290343c
backtrace:
#00 pc 000000000030143c /data/app/~~7gGyIDcyHNgf-BRilBBzpQ==/com.CATana.HeroicDice-awDPoSit4voup5e0mow8FA==/lib/arm64/libunity.so (MemoryManager::GetAllocatorContainingPtr(void const*)+24) (BuildId: a75eb098608197e1d7be2b514e77feb936dc6d4e)
#01 pc 0000000000311070 /data/app/~~7gGyIDcyHNgf-BRilBBzpQ==/com.CATana.HeroicDice-awDPoSit4voup5e0mow8FA==/lib/arm64/libunity.so (transfer_ownership(void*, MemLabelId const&, AllocationRootWithSalt)+52) (BuildId: a75eb098608197e1d7be2b514e77feb936dc6d4e)
#02 pc 00000000005cb13c /data/app/~~7gGyIDcyHNgf-BRilBBzpQ==/com.CATana.HeroicDice-awDPoSit4voup5e0mow8FA==/lib/arm64/libunity.so (dynamic_array_detail::dynamic_array_data::swap(dynamic_array_detail::dynamic_array_data&)+68) (BuildId: a75eb098608197e1d7be2b514e77feb936dc6d4e)
#03 pc 0000000000de39f4 /data/app/~~7gGyIDcyHNgf-BRilBBzpQ==/com.CATana.HeroicDice-awDPoSit4voup5e0mow8FA==/lib/arm64/libunity.so (allocutil::BuddyAllocator::FreeBlockRegistry::FreeBlockRegistry(MemLabelId, unsigned char, unsigned int)+276) (BuildId: a75eb098608197e1d7be2b514e77feb936dc6d4e)
#04 pc 0000000000de384c /data/app/~~7gGyIDcyHNgf-BRilBBzpQ==/com.CATana.HeroicDice-awDPoSit4voup5e0mow8FA==/lib/arm64/libunity.so (allocutil::BuddyAllocator::BuddyAllocator(MemLabelId, unsigned int, unsigned int, unsigned int)+272) (BuildId: a75eb098608197e1d7be2b514e77feb936dc6d4e)
#05 pc 0000000000790bb4 /data/app/~~7gGyIDcyHNgf-BRilBBzpQ==/com.CATana.HeroicDice-awDPoSit4voup5e0mow8FA==/lib/arm64/libunity.so (vk::BuddyMemoryAllocator::MemoryTypeAllocator::MemoryTypeAllocator(VkDevice_T*, VkPhysicalDeviceMemoryProperties const&, unsigned long, unsigned int, unsigned int, unsigned int, unsigned int)+100) (BuildId: a75eb098608197e1d7be2b514e77feb936dc6d4e)
#06 pc 0000000000790d70 /data/app/~~7gGyIDcyHNgf-BRilBBzpQ==/com.CATana.HeroicDice-awDPoSit4voup5e0mow8FA==/lib/arm64/libunity.so (vk::BuddyMemoryAllocator::AllocateImpl(VkDevice_T*, VkPhysicalDeviceMemoryProperties const&, unsigned long, unsigned int, unsigned long)+224) (BuildId: a75eb098608197e1d7be2b514e77feb936dc6d4e)
#07 pc 0000000000790818 /data/app/~~7gGyIDcyHNgf-BRilBBzpQ==/com.CATana.HeroicDice-awDPoSit4voup5e0mow8FA==/lib/arm64/libunity.so (vk::AllocateImage(VkDevice_T*, VkPhysicalDeviceMemoryProperties const&, vk::MemoryAllocator&, VkImage_T*, unsigned int, unsigned long)+420) (BuildId: a75eb098608197e1d7be2b514e77feb936dc6d4e)
#08 pc 00000000007c7328 /data/app/~~7gGyIDcyHNgf-BRilBBzpQ==/com.CATana.HeroicDice-awDPoSit4voup5e0mow8FA==/lib/arm64/libunity.so (vk::ImageManager::PrepareNewImage(TextureDimension, int, VkExtent3D const&, VkFormat, int, unsigned int, VkSampleCountFlagBits, VkFormat, bool, vk::ImageMemory, bool, bool)+1040) (BuildId: a75eb098608197e1d7be2b514e77feb936dc6d4e)
#09 pc 00000000007c7a88 /data/app/~~7gGyIDcyHNgf-BRilBBzpQ==/com.CATana.HeroicDice-awDPoSit4voup5e0mow8FA==/lib/arm64/libunity.so (vk::ImageManager::CreateImage(vk::CommandBuffer*, vk::ScratchBuffer*, TextureDimension, vk::ImageData const&, VkExtent3D const&, GraphicsFormat, TextureFormat, TextureColorSpace, int, unsigned int, VkSampleCountFlagBits, bool)+348) (BuildId: a75eb098608197e1d7be2b514e77feb936dc6d4e)
#10 pc 000000000077cb54 /data/app/~~7gGyIDcyHNgf-BRilBBzpQ==/com.CATana.HeroicDice-awDPoSit4voup5e0mow8FA==/lib/arm64/libunity.so (vk::Texture::Create(vk::CommandBuffer*, vk::ScratchBuffer*, TextureID, TextureDimension, vk::ImageData const&, VkExtent3D const&, GraphicsFormat, int, VkSampleCountFlagBits, bool, bool)+964) (BuildId: a75eb098608197e1d7be2b514e77feb936dc6d4e)
#11 pc 00000000007c6530 /data/app/~~7gGyIDcyHNgf-BRilBBzpQ==/com.CATana.HeroicDice-awDPoSit4voup5e0mow8FA==/lib/arm64/libunity.so (vk::ImageManager::ImageManager(VkPhysicalDevice_T*, VkDevice_T*, vk::BufferManager&, vk::MemoryAllocator&, unsigned long, vk::Framebuffers&, vk::ResourceDestructionStagingArea&)+552) (BuildId: a75eb098608197e1d7be2b514e77feb936dc6d4e)
#12 pc 0000000000782238 /data/app/~~7gGyIDcyHNgf-BRilBBzpQ==/com.CATana.HeroicDice-awDPoSit4voup5e0mow8FA==/lib/arm64/libunity.so (GfxDeviceVK::GfxDeviceVK(MemLabelId const&, vk::Instance const&)+1848) (BuildId: a75eb098608197e1d7be2b514e77feb936dc6d4e)
#13 pc 0000000000776510 /data/app/~~7gGyIDcyHNgf-BRilBBzpQ==/com.CATana.HeroicDice-awDPoSit4voup5e0mow8FA==/lib/arm64/libunity.so (CreateVKGfxDevice()+120) (BuildId: a75eb098608197e1d7be2b514e77feb936dc6d4e)
#14 pc 000000000093d278 /data/app/~~7gGyIDcyHNgf-BRilBBzpQ==/com.CATana.HeroicDice-awDPoSit4voup5e0mow8FA==/lib/arm64/libunity.so (CreateRealGfxDevice(GfxDeviceRenderer)+80) (BuildId: a75eb098608197e1d7be2b514e77feb936dc6d4e)
#15 pc 0000000000cb5054 /data/app/~~7gGyIDcyHNgf-BRilBBzpQ==/com.CATana.HeroicDice-awDPoSit4voup5e0mow8FA==/lib/arm64/libunity.so (CreateClientGfxDevice(GfxDeviceRenderer, GfxCreateDeviceFlags)+216) (BuildId: a75eb098608197e1d7be2b514e77feb936dc6d4e)
#16 pc 000000000093e0c4 /data/app/~~7gGyIDcyHNgf-BRilBBzpQ==/com.CATana.HeroicDice-awDPoSit4voup5e0mow8FA==/lib/arm64/libunity.so (CreateGfxDevice(GfxDeviceRenderer, GfxCreateDeviceFlags)+252) (BuildId: a75eb098608197e1d7be2b514e77feb936dc6d4e)
#17 pc 000000000093e384 /data/app/~~7gGyIDcyHNgf-BRilBBzpQ==/com.CATana.HeroicDice-awDPoSit4voup5e0mow8FA==/lib/arm64/libunity.so (InitializeGfxDevice()+668) (BuildId: a75eb098608197e1d7be2b514e77feb936dc6d4e)
#18 pc 00000000007151a8 /data/app/~~7gGyIDcyHNgf-BRilBBzpQ==/com.CATana.HeroicDice-awDPoSit4voup5e0mow8FA==/lib/arm64/libunity.so (AndroidGraphics::Startup()+92) (BuildId: a75eb098608197e1d7be2b514e77feb936dc6d4e)
#19 pc 00000000006ebb0c /data/app/~~7gGyIDcyHNgf-BRilBBzpQ==/com.CATana.HeroicDice-awDPoSit4voup5e0mow8FA==/lib/arm64/libunity.so (UnityInitApplication()+3364) (BuildId: a75eb098608197e1d7be2b514e77feb936dc6d4e)
#20 pc 00000000006ec548 /data/app/~~7gGyIDcyHNgf-BRilBBzpQ==/com.CATana.HeroicDice-awDPoSit4voup5e0mow8FA==/lib/arm64/libunity.so (UnityPlayerLoop()+152) (BuildId: a75eb098608197e1d7be2b514e77feb936dc6d4e)
#21 pc 00000000007173a8 /data/app/~~7gGyIDcyHNgf-BRilBBzpQ==/com.CATana.HeroicDice-awDPoSit4voup5e0mow8FA==/lib/arm64/libunity.so (nativeRender(_JNIEnv*, _jobject*)+72) (BuildId: a75eb098608197e1d7be2b514e77feb936dc6d4e)
#22 pc 0000000000222244 /apex/com.android.art/lib64/libart.so (art_quick_generic_jni_trampoline+148) (BuildId: e6c658201ef1ec3760112fa1b838ab2c)
#23 pc 0000000000218964 /apex/com.android.art/lib64/libart.so (art_quick_invoke_stub+548) (BuildId: e6c658201ef1ec3760112fa1b838ab2c)
#24 pc 0000000000284208 /apex/com.android.art/lib64/libart.so (art::ArtMethod::Invoke(art::Thread*, unsigned int*, unsigned int, art::JValue*, char const*)+188) (BuildId: e6c658201ef1ec3760112fa1b838ab2c)
#25 pc 00000000003e34ac /apex/com.android.art/lib64/libart.so (art::interpreter::ArtInterpreterToCompiledCodeBridge(art::Thread*, art::ArtMethod*, art::ShadowFrame*, unsigned short, art::JValue*)+400) (BuildId: e6c658201ef1ec3760112fa1b838ab2c)
#26 pc 00000000003de320 /apex/com.android.art/lib64/libart.so (bool art::interpreter::smile:oCall<false, false>(art::ArtMethod*, art::Thread*, art::ShadowFrame&, art::Instruction const*, unsigned short, art::JValue*)+804) (BuildId: e6c658201ef1ec3760112fa1b838ab2c)
#27 pc 0000000000756084 /apex/com.android.art/lib64/libart.so (MterpInvokeDirect+1036) (BuildId: e6c658201ef1ec3760112fa1b838ab2c)
#28 pc 0000000000203914 /apex/com.android.art/lib64/libart.so (mterp_op_invoke_direct+20) (BuildId: e6c658201ef1ec3760112fa1b838ab2c)
#29 pc 0000000000758274 /apex/com.android.art/lib64/libart.so (MterpInvokeStatic+2152) (BuildId: e6c658201ef1ec3760112fa1b838ab2c)
#30 pc 0000000000203994 /apex/com.android.art/lib64/libart.so (mterp_op_invoke_static+20) (BuildId: e6c658201ef1ec3760112fa1b838ab2c)
#31 pc 00000000003d6150 /apex/com.android.art/lib64/libart.so (art::interpreter::Execute(art::Thread*, art::CodeItemDataAccessor const&, art::ShadowFrame&, art::JValue, bool, bool)+304) (BuildId: e6c658201ef1ec3760112fa1b838ab2c)
#32 pc 00000000003dd890 /apex/com.android.art/lib64/libart.so (art::interpreter::ArtInterpreterToInterpreterBridge(art::Thread*, art::CodeItemDataAccessor const&, art::ShadowFrame*, art::JValue*)+204) (BuildId: e6c658201ef1ec3760112fa1b838ab2c)
#33 pc 00000000003de2fc /apex/com.android.art/lib64/libart.so (bool art::interpreter::smile:oCall<false, false>(art::ArtMethod*, art::Thread*, art::ShadowFrame&, art::Instruction const*, unsigned short, art::JValue*)+768) (BuildId: e6c658201ef1ec3760112fa1b838ab2c)
#34 pc 0000000000752fc4 /apex/com.android.art/lib64/libart.so (MterpInvokeInterface+1568) (BuildId: e6c658201ef1ec3760112fa1b838ab2c)
#35 pc 0000000000203a14 /apex/com.android.art/lib64/libart.so (mterp_op_invoke_interface+20) (BuildId: e6c658201ef1ec3760112fa1b838ab2c)
#36 pc 000000000074d3e4 /apex/com.android.art/lib64/libart.so (MterpInvokeVirtual+3036) (BuildId: e6c658201ef1ec3760112fa1b838ab2c)
#37 pc 0000000000203814 /apex/com.android.art/lib64/libart.so (mterp_op_invoke_virtual+20) (BuildId: e6c658201ef1ec3760112fa1b838ab2c)
#38 pc 0000000000758274 /apex/com.android.art/lib64/libart.so (MterpInvokeStatic+2152) (BuildId: e6c658201ef1ec3760112fa1b838ab2c)
#39 pc 0000000000203994 /apex/com.android.art/lib64/libart.so (mterp_op_invoke_static+20) (BuildId: e6c658201ef1ec3760112fa1b838ab2c)
#40 pc 00000000003d6150 /apex/com.android.art/lib64/libart.so (art::interpreter::Execute(art::Thread*, art::CodeItemDataAccessor const&, art::ShadowFrame&, art::JValue, bool, bool)+304) (BuildId: e6c658201ef1ec3760112fa1b838ab2c)
#41 pc 000000000073b6b8 /apex/com.android.art/lib64/libart.so (artQuickToInterpreterBridge+776) (BuildId: e6c658201ef1ec3760112fa1b838ab2c)
#42 pc 0000000000222378 /apex/com.android.art/lib64/libart.so (art_quick_to_interpreter_bridge+88) (BuildId: e6c658201ef1ec3760112fa1b838ab2c)
#43 pc 0000000000211608 /apex/com.android.art/lib64/libart.so (nterp_helper+152) (BuildId: e6c658201ef1ec3760112fa1b838ab2c)
#44 pc 0000000000218964 /apex/com.android.art/lib64/libart.so (art_quick_invoke_stub+548) (BuildId: e6c658201ef1ec3760112fa1b838ab2c)
#45 pc 0000000000284208 /apex/com.android.art/lib64/libart.so (art::ArtMethod::Invoke(art::Thread*, unsigned int*, unsigned int, art::JValue*, char const*)+188) (BuildId: e6c658201ef1ec3760112fa1b838ab2c)
#46 pc 000000000061fb98 /apex/com.android.art/lib64/libart.so (art::JValue art::InvokeVirtualOrInterfaceWithJValues<art::ArtMethod*>(art::ScopedObjectAccessAlreadyRunnable const&, _jobject*, art::ArtMethod*, jvalue const*)+460) (BuildId: e6c658201ef1ec3760112fa1b838ab2c)
#47 pc 000000000066e75c /apex/com.android.art/lib64/libart.so (art::Thread::CreateCallback(void*)+1184) (BuildId: e6c658201ef1ec3760112fa1b838ab2c)
#48 pc 00000000000b1690 /apex/com.android.runtime/lib64/bionic/libc.so (__pthread_start(void*)+204) (BuildId: 28943f8bb3b7b23557619af9a38223c5)
#49 pc 00000000000510ac /apex/com.android.runtime/lib64/bionic/libc.so (__start_thread+64) (BuildId: 28943f8bb3b7b23557619af9a38223c5)
at libunity.MemoryManager::GetAllocatorContainingPtr(void const*)(GetAllocatorContainingPtr:24)
at libunity.transfer_ownership(void*, MemLabelId const&, AllocationRootWithSalt)(transfer_ownership:52)
at libunity.dynamic_array_detail::dynamic_array_data::swap(dynamic_array_detail::dynamic_array_data&)(swap:68)
at libunity.allocutil::BuddyAllocator::FreeBlockRegistry::FreeBlockRegistry(MemLabelId, unsigned char, unsigned int)(FreeBlockRegistry:276)
at libunity.allocutil::BuddyAllocator::BuddyAllocator(MemLabelId, unsigned int, unsigned int, unsigned int)(BuddyAllocator:272)
at libunity.vk::BuddyMemoryAllocator::MemoryTypeAllocator::MemoryTypeAllocator(VkDevice_T*, VkPhysicalDeviceMemoryProperties const&, unsigned long, unsigned int, unsigned int, unsigned int, unsigned int)(MemoryTypeAllocator:100)
at libunity.vk::BuddyMemoryAllocator::AllocateImpl(VkDevice_T*, VkPhysicalDeviceMemoryProperties const&, unsigned long, unsigned int, unsigned long)(AllocateImpl:224)
at libunity.vk::AllocateImage(VkDevice_T*, VkPhysicalDeviceMemoryProperties const&, vk::MemoryAllocator&, VkImage_T*, unsigned int, unsigned long)(AllocateImage:420)
at libunity.vk::ImageManager::PrepareNewImage(TextureDimension, int, VkExtent3D const&, VkFormat, int, unsigned int, VkSampleCountFlagBits, VkFormat, bool, vk::ImageMemory, bool, bool)(PrepareNewImage:1040)
at libunity.vk::ImageManager::CreateImage(vk::CommandBuffer*, vk::ScratchBuffer*, TextureDimension, vk::ImageData const&, VkExtent3D const&, GraphicsFormat, TextureFormat, TextureColorSpace, int, unsigned int, VkSampleCountFlagBits, bool)(CreateImage:348)
at libunity.vk::Texture::Create(vk::CommandBuffer*, vk::ScratchBuffer*, TextureID, TextureDimension, vk::ImageData const&, VkExtent3D const&, GraphicsFormat, int, VkSampleCountFlagBits, bool, bool)(Create:964)
at libunity.vk::ImageManager::ImageManager(VkPhysicalDevice_T*, VkDevice_T*, vk::BufferManager&, vk::MemoryAllocator&, unsigned long, vk::Framebuffers&, vk::ResourceDestructionStagingArea&)(ImageManager:552)
at libunity.GfxDeviceVK::GfxDeviceVK(MemLabelId const&, vk::Instance const&)(GfxDeviceVK:1848)
at libunity.CreateVKGfxDevice()(CreateVKGfxDevice:120)
at libunity.CreateRealGfxDevice(GfxDeviceRenderer)(CreateRealGfxDevice:80)
at libunity.CreateClientGfxDevice(GfxDeviceRenderer, GfxCreateDeviceFlags)(CreateClientGfxDevice:216)
at libunity.CreateGfxDevice(GfxDeviceRenderer, GfxCreateDeviceFlags)(CreateGfxDevice:252)
at libunity.InitializeGfxDevice()(InitializeGfxDevice:668)
at libunity.AndroidGraphics::Startup()(Startup:92)
at libunity.UnityInitApplication()(UnityInitApplication:3364)
at libunity.UnityPlayerLoop()(UnityPlayerLoop:152)
at libunity.nativeRender(_JNIEnv*, _jobject*)(nativeRender:72)
at libart.art_quick_generic_jni_trampoline(art_quick_generic_jni_trampoline:148)
at libart.art_quick_invoke_stub(art_quick_invoke_stub:548)
at libart.art::ArtMethod::Invoke(art::Thread*, unsigned int*, unsigned int, art::JValue*, char const*)(Invoke:188)
at libart.art::interpreter::ArtInterpreterToCompiledCodeBridge(art::Thread*, art::ArtMethod*, art::ShadowFrame*, unsigned short, art::JValue*)(ArtInterpreterToCompiledCodeBridge:400)
at libart.bool art::interpreter::smile:oCall<false, false>(art::ArtMethod*, art::Thread*, art::ShadowFrame&, art::Instruction const*, unsigned short, art::JValue*)(DoCall<false, false>:804)
at libart.MterpInvokeDirect(MterpInvokeDirect:1036)
at libart.mterp_op_invoke_direct(mterp_op_invoke_direct:20)
at libart.MterpInvokeStatic(MterpInvokeStatic:2152)
at libart.mterp_op_invoke_static(mterp_op_invoke_static:20)
at libart.art::interpreter::Execute(art::Thread*, art::CodeItemDataAccessor const&, art::ShadowFrame&, art::JValue, bool, bool)(Execute:304)
Any suggestions?