Firebase Crashlytics: загрузите отсутствующие dSYM, чтобы увидеть сбои из 1 версии. (IOS)

Сообщение об ошибке: Загрузите отсутствующие dSYM, чтобы увидеть сбои из 1 версии. Затронутые версии: 1.0 (1)

Я пытаюсь реализовать Firebase Crashlytics в моем проекте iOS. Я сделал все настройки согласно Firebase Crashlytics Doucmentation. Авария выполняется вручную при нажатии кнопки, чтобы увидеть, работает ли аварийный сбой.

@IBAction func onTestCrashButtonClick(_ sender: UIButton) {

    Crashlytics.sharedInstance().crash()

}

Но когда я попытался увидеть отчет об ошибке в консоли Firebase, он показывает что-то вроде этого изображения.

enter image description here

После прочтения отчетов о сбоях Get Deobfuscated я просто установил формат отладочной информации в DWARF с файлом dSYM, как показано ниже, но проблема до сих пор не устранена. enter image description here

Ответ 1

У меня была такая же проблема на некоторое время, и я, наконец, смог ее решить, подумал, что буду делиться тем, что сработало для меня:

Для контекста я работаю над большим приложением, которое использует несколько Cocoapod.

Я нашел тот же красный баннер на моей странице Firebase Crashlytics и после выполнения всех своих инструкций я все еще видел его.

Я попробовал "архив/найти.dSYMs/загрузить вручную через терминал" несколько раз безрезультатно.

Наконец, я решил загрузить.dSYM из iTunesConnect.
[Ваше приложение]> Активность> [Желаемый номер сборки]> Загрузить dSYM

Затем я загрузил эти.dSYM вручную и в течение нескольких минут Firebase Crashlytics был счастлив и показывал отчеты о сбоях.

ОБНОВИТЬ
Google добавила шикарную функцию загрузки.dSYM на панель мониторинга Firebase Crashlytics, больше не загружая ее с терминала.

Ответ 2

В моем случае я сделал следующие вещи, и это сработало:

  1. Выберите "Запускать сценарий только при установке" в Этапы сборки → Выполнить сценарий (Shell = $ {PODS_ROOT}/Fabric/run)

  2. Создайте приложение

  3. Теперь вы можете найти файл .dsym по пути, /Library/Developer/Xcode/DerivedData/XXX-arctjcalvfslmbakanpyivuuxjmm/Build/Products/Release-iphoneos

  4. Загрузите сжатый файл .dsym в консоль Firebase

  5. Через несколько минут вы можете найти отчеты о сбоях

НОТА:

  • Я отключил битовый код при экспорте файла ipa (Adhoc или Appstore)
  • Если вам нужен ipa с включенным бит-кодом, скачайте файл dsym из iTunes connect

Ответ 3

Если вы используете динамическую библиотеку, это ваш проект с использованием программ cocoa или любого другого инструмента, тогда Firebase нуждается в файлах Duplicate Symbol, чтобы найти неисправный код в вашей библиотеке. Если вы хотите больше узнать о dSysms, прочтите следующее: fooobar.com/questions/68871/...

Чтобы найти папку dsysm, вам сначала понадобится файл.ipa, на котором была отмечена авария на вашей Firebase. В вашем случае, я полагаю, вы работаете на симуляторе для тестирования. Чтобы получить IPA, выполните следующие действия: Как создать ipa в xcode 6 без учетной записи Apple Developer?

Когда вы достигнете.iPA, щелкните правой кнопкой мыши и выберите показать содержимое пакета или следуйте по этой ссылке: iphone: Где находится файл.dSYM в отчете о сбое

Там вы найдете системную папку. Загрузите эту папку в firebase crashalytics.

Надеюсь это поможет!

Ответ 4

Найти и загрузить символы отладки для Crashlytics

  • Скопируйте UUID вашего отсутствующего dSYM и запустите mdfind "com_apple_xcode_dsym_uuids == <UUID>" в окне терминала.
  • Приведенная выше команда вернет что-то вроде .../build/ios/Release-Staging-iphoneos/your.app.dSYM
  • Заархивируйте пакет и загрузите его в Crashlytics с помощью панели инструментов Firebase

Подождите 10-15 минут, прежде чем на консоли начнут появляться сбои.

Ответ 5

Я перепробовал все ответы, предложенные в stackoverflow и других сайтах, я загрузил DSYM и сделал все в соответствии с документами crashlytics, в конце концов я решил свою проблему, сняв флажок Run script only when installing

enter image description here

Ответ 6

Простые шаги Следуйте 1 Перейдите в архив и щелкните правой кнопкой мыши на последней версии, в которой вы хотите получить отчет о сбое на firebase 2, см. папку dsyms 3, создайте Zip файл папки dsyms 4, наконец, загрузите этот zip файл в консоль firebase