iOS+ (платформы Apple)
Для приложений платформы Apple, использующих Crashlytics Unity SDK 8.2.0+, плагин Firebase Unity Editor автоматически настраивает ваш проект Xcode для загрузки символов. Загрузите последнюю версию.
Андроид
Для приложений Android Crashlytics Unity SDK 8.6.1+ автоматически включает отчеты о сбоях NDK, что позволяет Crashlytics автоматически сообщать о сбоях Unity IL2CPP на Android. Однако, чтобы увидеть символизированные трассировки стека для сбоев встроенной библиотеки на панели управления Crashlytics , вы должны загрузить информацию о символах во время сборки с помощью Firebase CLI.
Убедитесь, что вы используете Crashlytics Unity SDK версии 8.6.1 или новее. Загрузите последнюю версию.
Настройте среду и проект для загрузки символов:
Следуйте инструкциям по установке Firebase CLI .
Если вы уже установили CLI, обязательно обновите его до последней версии .
(только для приложений, использующих Android API уровня 30+) Обновите шаблон
AndroidManifest.xml
вашего приложения, чтобы отключить тегирование указателем:Установите флажок «Настройки Android Player» > «Настройки публикации» > «Сборка» > «Пользовательский основной манифест» .
Откройте шаблон манифеста, расположенный в
Assets/Plugins/Android/AndroidManifest.xml
.(только для приложений, использующих версию SDK до 8.8.0 ). Добавьте в тег приложения следующий атрибут:
<application android:allowNativeHeapPointerTagging="false" ... />
Создайте свой проект и загрузите символы.
Выполняйте эти шаги каждый раз, когда вы создаете сборку выпуска или любую сборку, для которой вы хотите видеть символизированные трассировки стека в консоли Firebase .
В диалоговом окне «Параметры сборки» выполните одно из следующих действий:
Экспортируйте в проект Android Studio для создания своего проекта; или
Создайте свой APK прямо из редактора Unity.
Перед сборкой убедитесь, что в диалоговом окне «Настройки сборки» установлен флажок « Создать символы.zip» .
После завершения сборки создайте файл символов, совместимый с Crashlytics , и загрузите его на серверы Firebase, выполнив следующую команду Firebase CLI:
firebase crashlytics:symbols:upload --app=FIREBASE_APP_ID PATH/TO/SYMBOLS
FIREBASE_APP_ID : идентификатор вашего приложения Firebase для Android (а не имя вашего пакета).
Пример идентификатора приложения Firebase для Android:1:567383003300:android:17104a2ced0c9b9b
Вот два способа найти идентификатор приложения Firebase:
В файле
google-services.json
вашим идентификатором приложения является значениеmobilesdk_app_id
; илиВ консоли Firebase перейдите в настройки проекта . Прокрутите вниз до карточки «Ваши приложения» , затем нажмите нужное приложение Firebase, чтобы найти его идентификатор приложения.
PATH/TO/SYMBOLS : путь к файлу символов, созданному CLI.
Экспортируется в проект Android Studio. PATH/TO/SYMBOLS — это каталог
unityLibrary/symbols
, который создается в корне экспортированного проекта после сборки приложения с помощью Gradle или Android Studio.Создан APK непосредственно из Unity. PATH/TO/SYMBOLS — это путь к сжатому файлу символов, созданному в корневом каталоге проекта после завершения сборки (например:
myproject/myapp-1.0-v100.symbols.zip
).
Просмотр дополнительных параметров использования команды Firebase CLI для создания и загрузки файла символов.
Флаг Описание --generator=csym
Использует устаревший генератор файлов символов cSYM вместо генератора Breakpad по умолчанию.
Не рекомендуется к использованию. Мы рекомендуем использовать генератор файлов символов Breakpad по умолчанию.
--generator=breakpad
Использует генератор файлов символов Breakpad.
Обратите внимание, что по умолчанию для создания файла символов используется Breakpad. Используйте этот флаг, только если вы добавили
symbolGenerator { csym() }
в вашей конфигурации сборки, и вы хотите переопределить его, чтобы вместо этого использовать Breakpad.--dry-run
Создает файлы символов, но не загружает их.
Этот флаг полезен, если вы хотите проверить содержимое отправляемых файлов.
--debug
Предоставляет дополнительную информацию для отладки.