Abstürze und ANRs unter Android erzeugen einen Stacktrace, der einen Snapshot der Abfolge verschachtelter Funktionen, die in Ihrem Spiel bis zum Absturz aufgerufen wurden. Mit diesen Snapshots können Sie Probleme in der Quelle identifizieren und beheben.
Wenn Sie Ihr Spiel jedoch mit Unity im Release-Modus erstellen, sind die Symbole nicht im APK enthalten ist. Wenn Ihr Spiel abstürzt oder ANR-Fehler aufweist, wird nur der Aufrufstack die Adresse des Arbeitsspeichers.
Beispiel:
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 unterstützt das Hochladen einer Debugging-Symboldatei für jede Version Ihrer App in der Play Console. Dadurch lassen sich Abstürze und ANRs leichter analysieren und beheben.
Ab Version 2020.3 von Unity können Sie der Anleitung von Unity folgen, um Android-Symbole und laden Sie dann die Symbolication-Datei in Google hoch. Play Console, um einen visuell lesbaren Stacktrace zu Android Vitals zu sehen Dashboard.
Andernfalls können Sie die Artikel Symbolicate Android Absturz von Einheit zur manuellen Auflösung des Stacktrace oder zum Generieren von Symboldateien für niedrigere Versionen von Unity.