Код: Выделить всё
val exitReasons = activityManager.getHistoricalProcessExitReasons()
for (aei in exitReasons) {
if (aei.reason == ApplicationExitInfo.REASON_CRASH_NATIVE) {
val trace = aei.traceInputStream
val tombstone = Tombstone.parseFrom(trace)
}
}
Код: Выделить всё
private static CrashlyticsReport.ApplicationExitInfo convertApplicationExitInfo(
ApplicationExitInfo applicationExitInfo) {
String traceFile = null;
try {
InputStream traceInputStream = applicationExitInfo.getTraceInputStream();
if (traceInputStream != null) {
traceFile = convertInputStreamToString(traceInputStream);
}
} catch (IOException e) {
// ..omitted
}
return CrashlyticsReport.ApplicationExitInfo.builder()
// ..omitted
.setTraceFile(traceFile)
.build();
}
Однако мне неясно, поддерживает ли файл трассировки также Отслеживать Tombstone или нет.
Можем ли мы подтвердить, что Crashlytics уже анализирует Tombstone (
Код: Выделить всё
Tombstone.parseFrom(trace)
Наличие трассировки Tombstone действительно помогает разработчикам устранять проблемы, вызванные собственными сбоями.< /p>
Заранее спасибо
Подробнее здесь: https://stackoverflow.com/questions/792 ... ve-crashes