Сбой aafdex-sdk unity3d при переходе между сценами - только на Android

Я разрабатывал приложение для распознавания эмоций, используя affdex-sdk (v2.2) от Affectiva для Unity 5.4. Мое приложение состоит из 3 сцен, а затем я использую affectiva Camera_Detector сцену, и используйте эмоцию как триггер, чтобы перейти к следующей сцене.

Он отлично работает в UnityEditor и как скомпилированный пакет Windows (x86). Однако при развертывании его на Android (5.0) сбои происходят всегда во время выполнения при пропуске с Camera_Detector сцена к следующей сцене (сцена загружается до Camera_Detector И в Camera_Detector сам никогда не врезался).

Я использую (в C#)

SceneManager.LoadScene("nextscene");

Устройство Android просто отображает "К сожалению, affdex_emotapp" остановлено.

Есть ли шанс заставить это работать под Android?

Вот вывод аварии из logcat:

F/libc    (15037): Fatal signal 11 (SIGSEGV), code 1, fault addr 0x898f0308 in tid 15053 (UnityMain)
I/DEBUG   (  247): *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
I/DEBUG   (  247): Build fingerprint:  samsung/matissevewifixx/matissevewifi:5.1.1/LMY47X/T533XXU1BOI3:user/release-keys'
I/DEBUG   (  247): Revision: '2'
I/DEBUG   (  247): ABI: 'arm'
I/DEBUG   (  247): pid: 15037, tid: 15053, name: UnityMain  >>> com.ibeb.emoface_cam <<<
I/DEBUG   (  247): signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr x898f0308
I/DEBUG   (  247):     r0 898f0308  r1 898f1000  r2 fffffe8c  r3 898f1000
I/DEBUG   (  247):     r4 898f0308  r5 00000001  r6 898f0ffc  r7 b42c7000
I/DEBUG   (  247):     r8 845d408c  r9 b91d9718  sl 00000001  fp a2b4e1a4
I/DEBUG   (  247):     ip a4110ee0  sp a2b4e178  lr a4031b34  pc a4031aa4  cpsr 80070010
I/DEBUG   (  247): 
I/DEBUG   (  247): backtrace:
I/DEBUG   (  247):     #00 pc 002b3aa4  /data/app/com.ibeb.emoface_cam-2/lib/arm/libmono.so
I/DEBUG   (  247):     #01 pc 002b3b30  /data/app/com.ibeb.emoface_cam-2/lib/arm/libmono.so (GC_push_all_stack+72)
I/DEBUG   (  247):     #02 pc 002bc7bc  /data/app/com.ibeb.emoface_cam-2/lib/arm/libmono.so
I/DEBUG   (  247):     #03 pc 002bc88c  /data/app/com.ibeb.emoface_cam-2/lib/arm/libmono.so
I/DEBUG   (  247):     #04 pc 002b85f8  /data/app/com.ibeb.emoface_cam-2/lib/arm/libmono.so
I/DEBUG   (  247):     #05 pc 002b55ec  /data/app/com.ibeb.emoface_cam-2/lib/arm/libmono.so
I/DEBUG   (  247):     #06 pc 002b1ee0  /data/app/com.ibeb.emoface_cam-2/lib/arm/libmono.so
I/DEBUG   (  247):     #07 pc 002abfb4  /data/app/com.ibeb.emoface_cam-2/lib/arm/libmono.so
I/DEBUG   (  247):     #08 pc 002aba98  /data/app/com.ibeb.emoface_cam-2/lib/arm/libmono.so
I/DEBUG   (  247):     #09 pc 002ad144  /data/app/com.ibeb.emoface_cam-2/lib/arm/libmono.so
I/DEBUG   (  247):     #10 pc 002b0b50  /data/app/com.ibeb.emoface_cam-2/lib/arm/libmono.so
I/DEBUG   (  247):     #11 pc 002b1080  /data/app/com.ibeb.emoface_cam-2/lib/arm/libmono.so
I/DEBUG   (  247):     #12 pc 002b12e8  /data/app/com.ibeb.emoface_cam-2/lib/arm/libmono.so
I/DEBUG   (  247):     #13 pc 001f5a04  /data/app/com.ibeb.emoface_cam-2/lib/arm/libmono.so
I/DEBUG   (  247):     #14 pc 001f69fc  /data/app/com.ibeb.emoface_cam-2/lib/arm/libmono.so (mono_array_new_specific+232)
I/DEBUG   (  247):     #15 pc 0000280c  <unknown>

1 ответ

Это связано с этой проблемой на портале для разработчиков:

"Когда вы переключаете сцены, вам нужно уничтожить и повторно вызвать Detector и CameraInput. Если вы не возродите эти компоненты, интерфейс камеры Unity получит замороженное изображение при перезагрузке, таким образом, вызывая постоянное получение метрик из изображения, полученного на сцене переход ". - http://developer.affectiva.com/v2_3/unity/analyze-camera/

Вы уничтожаете и возрождаете детектор и CameraInput.

Другие вопросы по тегам