У меня есть игра Unity для Android, которая аварийно завершает работу на определенном устройстве с собственным сбоем внутри libil2cpp.so. Сбой происходит только на этом устройстве и корректно работает на других устройствах Android.
Я пытаюсь понять основную причину и способы ее отладки или устранения.
Версия Unity
Код: Выделить всё
Unity 6000.0.60f1
Код: Выделить всё
Device: Nokia T20
Android version: 13 (API level 33)
CPU architecture: ARM64
GPU: Mali-G52
RAM: 4 GB
ABI: arm64-v8a
Код: Выделить всё
Platform: Android
Scripting Backend: IL2CPP
Target Architectures: ARM64 only
Managed Stripping Level: Medium
IL2CPP Code Generation: Optimize for runtime speed
C++ Compiler Configuration: Release
Development Build: Disabled
Script Debugging: Disabled
Код: Выделить всё
Auto Graphics API: Disabled
Graphics API: OpenGLES3 only
Graphics Jobs: Disabled
Код: Выделить всё
Google Admob Unity plugin
ironSource Unity plugin
Native Share plugin
Приложение запускается нормально
Unity инициализируется успешно
Первая сцена загружается
Сбой происходит вскоре после запуска во время выполнения
Управляемых исключений не происходит
Ошибки C# не регистрируются
Перед сбоем не отображаются предупреждения
/>Сбой происходит в основном потоке Unity
Код: Выделить всё
Crash log (logcat)
Fatal signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0x128f9000020
in tid UnityMain
backtrace:
#00 pc 0000000000000000 libil2cpp.so
#01 pc 0000000000000000 libil2cpp.so
#02 pc 0000000000000000 libil2cpp.so
#03 pc 0000000000000000 libunity.so
#04 pc 0000000000000000 libunity.so
#05 pc 0000000000000000 libunity.so
Код: Выделить всё
DeadSystemException: The system died; earlier logs will point to the root cause
*** FATAL EXCEPTION IN SYSTEM PROCESS
https://play.google.com/store/apps/deta ... astHideout
Подробнее здесь: https://stackoverflow.com/questions/798 ... 52-unity-6
Мобильная версия