Я создаю Android-приложение с Unity 2018.1.0f2 и получаю какую-то ошибку сегментации при запуске.Точная ошибка следующая:
05-16 20:54:11.834: E/SamsungIME(9413): <AbstractKeyboardView> - onDraw() called
05-16 20:54:12.142: E/ViewRootImpl(17850): sendUserActionEvent() mView == null
05-16 20:54:12.146: E/SKBD KeyboardInfoUtils(9413): getInstance start
05-16 20:54:12.146: E/SKBD KeyboardInfoUtils(9413): sendSIPInformation state:6 isAbstractKeyboardView : true
05-16 20:54:12.151: E/SKBD KeyboardInfoUtils(9413): sending null keyboardInfo as SIP is closed
05-16 20:54:15.401: A/libc(17850): Fatal signal 11 (SIGSEGV), code 1, fault addr 0x0 in tid 17865 (UnityMain)
05-16 20:54:15.401: A/libc(17850): [ 05-16 20:54:15.407 3096: 3096 W/ ]
05-16 20:54:15.401: A/libc(17850): debuggerd: handling request: pid=17850 uid=10350 gid=10350 tid=17865
05-16 20:54:15.633: A/DEBUG(17987): *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
05-16 20:54:15.634: A/DEBUG(17987): Build fingerprint: 'samsung/heroltexx/herolte:7.0/NRD90M/G930FXXS2DRDI:user/release-keys'
05-16 20:54:15.635: A/DEBUG(17987): Revision: '8'
05-16 20:54:15.635: A/DEBUG(17987): ABI: 'arm'
05-16 20:54:15.635: A/DEBUG(17987): pid: 17850, tid: 17865, name: UnityMain >>> de.zoomapp.zoom <<<
05-16 20:54:15.635: A/DEBUG(17987): signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0x0
05-16 20:54:15.636: A/DEBUG(17987): r0 00000000 r1 c7ad20b0 r2 cf9ffc24 r3 efc62308
05-16 20:54:15.637: A/DEBUG(17987): r4 c7ad20b0 r5 c7ad20cc r6 ffffffff r7 00000000
05-16 20:54:15.637: A/DEBUG(17987): r8 00000000 r9 ee67ecb4 sl ee67ebc8 fp ee67e5e8
05-16 20:54:15.637: A/DEBUG(17987): ip c7ad20b0 sp ee67e5c8 lr cf9ffc3c pc f2386338 cpsr a00e0030
05-16 20:54:15.651: A/DEBUG(17987): backtrace:
05-16 20:54:15.652: A/DEBUG(17987): #00 pc 00018338 /system/lib/libc.so (strcmp+47)
05-16 20:54:15.652: A/DEBUG(17987): #01 pc 0014bc38 /data/app/de.zoomapp.zoom-1/lib/arm/libunity.so
05-16 20:54:15.652: A/DEBUG(17987): #02 pc 00008484 <anonymous:c7275000>
05-16 20:54:17.518: E/audit(4645): type=1701 audit(1526496857.505:4791): auid=4294967295 uid=10350 gid=10350 ses=4294967295 subj=u:r:untrusted_app:s0:c512,c768 pid=17865 comm="UnityMain" exe="/system/bin/app_process32" sig=11
05-16 20:54:17.562: E/lowmemorykiller(3180): Error writing /proc/17850/oom_score_adj; errno=22
Я стараюсь отображать каждый экран в альбомной и портретной ориентации.Когда пользователь находится на экране входа в систему и нажимает кнопку входа в систему, на сервер отправляется запрос UnityWebRequest.Если сервер отвечает положительным результатом, переходы пользовательского интерфейса открывают загрузочный экран, в фоновом режиме отправляются многочисленные запросы UnityWeb для получения дополнительной информации о значках и изображениях, которые нужно показать.Когда загрузка завершена, отображается главное меню, а на заднем плане игра уже загружена, но приостановлена.Эта игра состоит только из нескольких картинок и довольно статична, поэтому я не буду описывать ее подробно здесь.Указанный сбой происходит, если пользователь поворачивает свой телефон из книжного в альбомный режим сразу после нажатия кнопки «Войти» и во время отображения экрана загрузки.Я мог постоянно воспроизводить эту ошибку на своем Samsung Galaxy S7, но не смог сделать минимальный пример в чистом проекте.Это может быть проблема с выдачей веб-запросов, может быть?Я помещаю сообщения журнала по всему своему коду, и перед сбоем я часто видел выражение yield некоторого веб-запроса.У меня есть несколько сопрограмм, загружающих некоторые изображения в асинхронном режиме.Если я закомментирую все сопрограммы, он будет работать нормально, но я не знаю, происходит ли это из-за очень быстрой загрузки, или сопрограммы вызывают проблему.Затем я искал в интернете и обнаружил, что использовать инструмент addr2line.Это произвело для адреса 0014bc38:
operator delete[](void*, std::nothrow_t const&)
Я не могу найти точную проблему.Надеюсь, у кого-нибудь есть подсказка, как мне это искать.Спасибо, ребята.
С уважением, Майкл