Arresti anomali e ANR su Android generano un'analisi dello stack, ovvero un'istantanea del sequenza di funzioni nidificate chiamate nel gioco fino al momento in cui si è verificato l'arresto anomalo. Queste istantanee possono aiutarti a identificare e risolvere eventuali problemi nel codice sorgente.
Tuttavia, quando crei il tuo gioco con Unity in modalità di rilascio, i simboli vengono non pacchettizzata con l'APK. Se il gioco ha un arresto anomalo o presenta errori ANR, solo lo stack di chiamate mostra l'indirizzo della memoria.
Ad esempio:
05-26 18:06:51.311: A/libc(26986): Fatal signal 11 (SIGSEGV) at 0x000004e4 (code=1), thread 27024 (Worker Thread) 05-26 18:06:51.411: I/DEBUG(242): *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** 05-26 18:06:51.411: I/DEBUG(242): Build fingerprint: 'Xiaomi/cancro_wc_lte/cancro:4.4.4/KTU84P/V6.7.1.0.KXDCNCH:user/release-keys' 05-26 18:06:51.411: I/DEBUG(242): Revision: '0' 05-26 18:06:51.411: I/DEBUG(242): pid: 26986, tid: 27024, name: Worker Thread >>> com.u.demo <<< 05-26 18:06:51.411: I/DEBUG(242): signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 000004e4 I/DEBUG(242): backtrace: I/DEBUG(242): #00 pc 006d4960 /data/app-lib/com.u.demo-1/libunity.so I/DEBUG(242): #01 pc 006d4c0c /data/app-lib/com.u.demo-1/libunity.so I/DEBUG(242): #02 pc 006d4c0c /data/app-lib/com.u.demo-1/libunity.so I/DEBUG(242): #03 pc 006d4c0c /data/app-lib/com.u.demo-1/libunity.so I/DEBUG(242): #04 pc 006d4c0c /data/app-lib/com.u.demo-1/libunity.so I/DEBUG(242): #05 pc 001c5510 /data/app-lib/com.u.demo-1/libunity.so I/DEBUG(242): #06 pc 001c595c /data/app-lib/com.u.demo-1/libunity.so I/DEBUG(242): #07 pc 001c4ec0 /data/app-lib/com.u.demo-1/libunity.so I/DEBUG(242): #08 pc 0043a05c /data/app-lib/com.u.demo-1/libunity.so I/DEBUG(242): #09 pc 0000d248 /system/lib/libc.so (__thread_entry+72) I/DEBUG(242): #10 pc 0000d3e0 /system/lib/libc.so (pthread_create+240)
Google Play supporta il caricamento di un file di simboli di debug per ogni versione dell'app in Play Console. In questo modo è più semplice analizzare e risolvere i problemi relativi ad arresti anomali e ANR.
A partire da Unity 2020.3, puoi seguire le indicazioni di Unity per generare Simboli Android e quindi carica il file di simbolizzazione su Google Play Console per visualizzare un'analisi dello stack leggibile su Android vitals Fitbit.com.
Altrimenti, puoi seguire le Articolo sull'arresto anomalo di Android simboli di Unity per risolvere manualmente l'analisi dello stack o generare file di simboli per ridurre di Unity.