Загрузка файлов символов

На моей странице Firebase Crash Reporting я не могу найти полную информацию о сбоях (например, число строк, файл и т. Д.). Я думал, это может быть, потому что это говорит

Загрузите файл символа, чтобы символизировать будущие следы стека для UUID – ***

рассказывая мне

Используя командную строку, перейдите в папку проекта Xcode и выполните следующее: ./Pods/FirebaseCrash/batch-upload – ***

К сожалению, когда я пытаюсь выполнить эту команду в моем проекте Xcode, я получаю следующее сообщение:

– ***: предупреждение: нет исполняемого файла или пакета.

и ничего не меняется в firebase. Возможно, это связано с тем, что биткод включен? Как я могу это решить?

PS: Я поменял свой UUID на – *** по соображениям безопасности.

3 Solutions collect form web for “Загрузка файлов символов”

Этот ответ заключается в том, что вы не используете CocoaPods.

Если вы не используете CocoaPods, вам понадобятся файлы из каталога Pods, которые не входят в стандартный набор библиотек Firebase, которые они предоставляют.

Есть 5 файлов, изображенных ниже: Необходимые файлы FirebaseCrash

Вам понадобятся batch-upload , dump_syms , upload-sym , upload-sym-util.bash и upload-sym.sh . Вы можете получить эти файлы из файлов FirebaseCrash Pod.

Если вы скопируете их в каталог проекта и замените "${PODS_ROOT}"/FirebaseCrash/ на каталог, указывающий на эти файлы, он должен работать.

Примечание. У меня все еще есть сложности с этим решением, если я использую сервер сборки, такой как Jenkins. Еще предстоит проделать определенную работу.


Я обнаружил, что это было необходимо для моих приложений, которые не используют CocoaPods. Хотя это может не иметь прямого отношения к вашему собственному использованию, я считаю, что, по крайней мере, я должен включить его для кого-то другого, пытающегося найти ответ.

В настоящее время у нас есть некоторые проблемы с сторонними библиотеками (динамическими фреймворками), поэтому, если вы используете общую библиотеку, все становится сложно. Следуйте приведенным ниже инструкциям, но замените путь к исполняемому файлу приложения на путь к общей библиотеке.

Если нет, то возможно, что исходный исполняемый файл, из которого было сообщено сообщение об ошибке, был потерян. Даже если он будет перестроен с теми же источниками, поле LC_UUID изменится.

  1. Убедитесь, что UUID верен для исполняемого файла:

      dwarfdump --uuid / path / to / your / build / area / MyApp .app / MyApp 

    Если ни один из UUID не соответствует отсутствующему, то игра закончилась. Сожалею. Вы можете попытаться восстановить исполняемый файл из Time Machine, Carbonite или что-то еще, но это все.

  2. Если один из UUID соответствует (по одному для каждой архитектуры), то у вас все еще есть исходный исполняемый файл, но скорее всего отсутствует пакет dSYM. Вы можете убедиться, что отсутствует dSYM:

      mdfind com_apple_xcode_dsym_uuids = UUID 

    Вы не увидите ответа.

  3. Восстановите пакет dSYM:

      dsymutil -o = upload.dSYM / path / to / your / build / area / MyApp .app / MyApp 
  4. Убедитесь, что зарегистрирован пакет dSYM:

      mdfind com_apple_xcode_dsym_uuids = UUID 

    Вы должны получить один ответ назад: upload.dSYM вы только что создали.

    Если вы его не видите, дайте ему несколько секунд и повторите попытку.

  5. Запустите batch-upload UUID снова.

  6. Если он все еще не работает, вы можете получить частичные результаты, обработав сам исполняемый файл. Запустите batch-upload /path/to/your/build/area/MyApp .app/ MyApp чтобы получить частичную символику.

В моем случае ( БЕЗ КОКУПАПОВ ):

1) Импортировать все файлы из каталога «Crash»

введите описание изображения здесь

2) Добавьте скрипт в вкладку «Построить фазы» следующим образом:

 # Replace this with the GOOGLE_APP_ID from your GoogleService-Info.plist file GOOGLE_APP_ID=1:xxxxxxxxxxxx:ios:xxxxxxxxxxxx # Replace the /Path/To/ServiceAccount.json with the path to the key you just downloaded "${SRCROOT}"/upload-sym "${SRCROOT}/*NameOfTargetDirectory*/ServiceAccount.json" 

Вам нужно изменить « NameOfTargetDirectory » в скрипте, и он работает!

  • Xcode потерял кнопку теста в xctest
  • Компиляция libical для armv7 и arm64 с cmake
  • Как изменить SWIFT_MODULE_NAME?
  • Параметры «Предоставление профиля» отсутствуют в «Подписание кода» Xcode 6.3
  • Откройте вызовы методов, недоступных в предыдущих версиях iOS
  • iOS несколько версий для приложения
  • Непрерывная интеграция Xcode 5 Ошибка CodeSign
  • реализовать панораму в стиле посыльного Facebook в полноэкранном режиме аналогичный эффект
  • Как создать новую цель в Xcode для расширения приложения с помощью CMake?
  • Как изменить стиль UIView, когда он прослушивается?
  • Не удается развернуть приложение на устройстве ios 8
  • Interesting Posts

    Локализовать строковые строки iOS + ресурсы с помощью Xcode 7

    Быстрое выполнение функции после завершения функции пыльника

    Можем ли мы транслировать песню на другое устройство во время игры (iOS Swift)?

    Ошибка CoreData на устройстве, но тонкая на симуляторе

    Обнаружение отвода внутри пути безье

    Swift & SpriteKit: Изображение на весь экран

    iOS: Objective-C: Firebase: возможно ли сначала прочитать кэшированные данные для любой ссылки?

    Использование RxSwift, как включить UIButton на основе допустимого текста?

    Быстрое сохранение циклов и закрытий

    Как я могу избавиться от резидентной грязной памяти в Objective-C?

    iOS10 + Градиентная остановка

    Как установить канал связи между Apple Watch Extension / App и iOS App

    iOS и Go – Keep-Alive с использованием NSURLSession

    Crashlytics: «Нам не хватает dSYM для обработки сбоев»

    Увеличение высоты разделителя UITableViewCell

    PhoneC: Разработка iOS проста с помощью XCode, Swift3, UITableView, cocatouch, давайте создадим приложения для iPhone, iPad и Macbook.