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 v8.6.1 или более позднюю версию. Загрузите последнюю версию.
Настройте среду и проект для загрузки символов:
Следуйте инструкциям по установке Firebase CLI .
Если вы уже установили CLI, обязательно обновите его до последней версии .
(только для приложений, использующих Android API уровня 30+) Обновите шаблон
AndroidManifest.xml
вашего приложения, чтобы отключить тегирование указателя:Установите флажок Настройки проигрывателя Android > Настройки публикации > Сборка > Пользовательский основной манифест .
Откройте шаблон манифеста, расположенный в
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
Предоставляет дополнительную отладочную информацию