2016-10-18 2 views
1

J'ai développé une application pour la reconnaissance des émotions en utilisant affdex-sdk (v2.2) d'Affectiva pour Unity 5.4. Mon application se compose de 3 scènes, puis j'utilise la scène Camera_Detector d'affectiva, et utilise une émotion comme déclencheur pour passer à la scène suivante.aafdex-sdk unity3d crash sur scène transition - seulement sur Android

Il fonctionne parfaitement dans UnityEditor et sous Windows (x86). Toutefois, lorsque je le déploie sur Android (5.0), les plantages se produisent toujours lors de l'exécution lorsque je passe de la scène Camera_Detector à la scène suivante (la scène charge précédemment Camera_Detector et Camera_Detector ne plante jamais).

J'utilise (en C#)

SceneManager.LoadScene("nextscene"); 

L'appareil Android affiche simplement "Malheureusement, affdex_emotapp" est arrêté.

Y a-t-il une chance que cela fonctionne sous Android?

Voici la sortie du crash de 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

cela a été dit mille fois - s'il vous plaît voir ce qui est connecté dans votre LogCat et si vous avez toujours eu le problème poster le journal ici. Personne n'est en mesure de vous aider à ce stade. –

+0

Hey, N'importe quelle chance nous pouvons obtenir le logcat comme Nika a suggéré ..? – ahamino

+0

Salut Nika et ahamino. J'ai ajouté le fichier logcat comme demandé, et je l'ai lu mais ne peux pas vraiment le comprendre. Au moins rien qui ressemble directement au problème. En outre, la dernière découverte est que les accidents sont retardés par scène si je charge la scène suivante de manière asynchrone. –

Répondre

0

Cela semble lié à cette question abordée dans le portail de développeur:

« Lorsque vous changez de scène, vous devez détruire et respawn le détecteur et CameraInput: Si vous ne réapparaissez pas ces composants, l'interface de l'appareil photo de Unity obtiendra une image figée lors du rechargement, ce qui entraînera l'apparition continue des mesures à partir de l'image prise lors de la transition de la scène. - http://developer.affectiva.com/v2_3/unity/analyze-camera/

Etes-vous en train de détruire et réapparaître le Detector et CameraInput?

+1

Hi @Forest. Oui - en suivant votre didacticiel youtube, j'ai utilisé Destroy (obj) pour le détecteur et l'entrée caméra.Ceux-ci ont été déclenchés par le même mécanisme pour changer de scène. S'il vous plaît laissez-moi savoir si par "détruire" et "réapparaître" vous voulez dire autre chose/autre fonction de l'unité. En outre, avez-vous eu une implémentation réussie du SDK dans un jeu d'unité multi-scène? Je ne pouvais contourner ce problème en utilisant un gestionnaire de scène virtuel pour allumer et éteindre la toile, mais il n'y a que peu de choses qu'il peut faire ... Merci;) –

+0

Bonjour @DiogoDuarte, oui, Nevermind utilise la commutation de scène (via Application.LoadLevelAsync). Nevermind est un jeu de bureau cependant. Je connais aussi un autre jeu qui change de scènes et fonctionne sur iOS. Connectez-vous hors ligne et discutez plus en détail. J'ai quelques idées que je préférerais ne pas partager publiquement. S'il vous plaît écrivez-moi à [email protected] –