Version: 2018.1

CrashReport

class in UnityEngine

Switch to Manual

Description

Хранит информацию о крэшах приложения одного события и предоставляет доступ ко всем собранным отчетам.

Если компиляция приложения происходит с соответствующими настройками, Unity попытается собрать всю полезную информацию, такую как, местоположение и поток трассировки стека при крэше. Если сбор информации прошел успешно, то при следующем старте приложения вся информация по крэшам будет доступна через это API.

Для активации генерации отчетов крэша, в настройках iOS плеера установите опцию "Script Call Optimization" в "Fast but no Exceptions". После сборки Xcode проекта в Unity, откройте проект и отредактируйте файл: Classes/CrashReporter.h. Измените определение ENABLE_CUSTOM_CRASH_REPORTER с 0 на 1.

Замечание: на текущий момент данное API доступно только для платформы iOS.

See Also: CrashReport.reports.

// This example shows a list of crash reports (if available),
// and allows you to output crash data to console, or
// delete them.
public class Crashes: MonoBehaviour {
    void OnGUI() {
        var reports = CrashReport.reports;
        GUILayout.Label("Crash reports:");
        foreach (var r in reports) {
            GUILayout.BeginHorizontal();
            GUILayout.Label("Crash: " + r.time);
            if (GUILayout.Button("Log")) {
                Debug.Log(r.text);
            }
            if (GUILayout.Button("Remove")) {
                r.Remove();
            }
            GUILayout.EndHorizontal();
        }
    }
}

Static Variables

lastReportВозвращает последний отчет крэша, или null в случае, если такого отчета нет.
reportsВозвращает все доступные на данный момент отчеты в новом массиве.

Variables

textДанные крэша, как форматированный текст.
timeВремя, когда произошел крэш.

Public Functions

RemoveУдаляет отчет из доступного списка отчетов.

Static Functions

RemoveAllУдаляет все отчеты из доступного списка отчетов.