Подтвердить что ты не робот

Crashlytics не отправляет отчет Crash из iPhone

Я установил Crashlytics в моем приложении iOS и установил приложение на реальном устройстве. Моя панель Crashlytics Dashboard показывает, что я успешно добавил приложение. Однако он не отправляет отчет о сбое. Моя скорость в Интернете не так хороша. Но я могу проверить свои электронные письма с этого устройства. Кто-нибудь может предположить, где проблема?

4b9b3361

Ответ 1

Отладчик Xcode НЕ позволяет Crashlytics обрабатывать отчеты о сбоях. Да, это кажется странным даже для меня, когда я читал это в первый раз, но это факт (Источник). Вот почему мы никогда не видим отчета о сбоях Когда:
 - запуск приложения в Simulator
 - запуск приложения на iDevice путем прямой сборки и запуска с Xcode с включенным отладчиком.

Чтобы убедиться, что во время тестирования сообщается о сбое (скопировано с сайта поддержки Crashlytics):
 1. Симулятор запуска
 2. Нажмите кнопку остановки
 3. Запустите приложение и выполните сбой
 4. Перезапустите приложение из симулятора
 5. См. Отчет о сбое в веб-панели.

EDIT:

Добавлена ​​ссылка; Crashlytics также предоставляет короткую статью о быстром способе принудительного сбоя и статью о почему вы не видите данные от вашего первого сбоя.

Ответ 2

Мое опоздание, но работа на 100%

Внесите некоторые изменения в настройки сборки проекта, как показано ниже.

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

и следуйте этим инструкциям.

Ответ 3

Основная причина, по которой любой аварийный репортер не будет работать на iOS, связан с помехами от разных репортеров. Тем не менее, с Crashlytics, в частности, может быть что-то конкретное для них, поскольку отчет о сбое не сообщается.

Отладчик Xcode НЕ разрешает Any Crash Reporter обрабатывать отчеты о сбоях. Это связано с тем, что XCode переопределяет любые крючки в обратные вызовы обработки сбоев. Это происходит только тогда, когда:

  • запущенное приложение в Simulator (с включенным отладчиком)
  • работает приложение iDevice, напрямую создавая и запуска из Xcode с включенным отладчиком.

Чтобы убедиться, что во время тестирования сообщается о сбое (http://support.crashlytics.com/knowledgebase/articles/92523-why-can-t-i-have-xcode-connected-):

  • Симулятор запуска
  • Нажмите кнопку остановки
  • Запустите приложение и выполните сбой
  • Перезапустите приложение из симулятора
  • См. отчет о сбое в веб-панели.

В то время как супер-старое видео по-прежнему актуально, вот видео описанных выше шагов (пример от Crittercism): https://www.youtube.com/watch?v=sU6Su3PBFH4

Ответ 4

Недавно мы столкнулись с этой проблемой, и я обнаружил, что где-то по пути сборка script была удалена. Добавьте его обратно со следующей исправленной проблемой для нас:
./Crashlytics.framework/run <your_api_key> <build_secret>

Примечание.. При использовании Cocoapods вы захотите использовать вместо этого выше следующее (source): ./Pods/CrashlyticsFramework/Crashlytics.framework/run

Добавление сборки script:

  • Чтобы добавить Запуск script Фаза сборки в Xcode 6, выберите цель вашего приложения в своем проекте, затем выберите "Сформировать фазы".
  • Нажмите маленький значок "плюс" и выберите "Новый запуск script Фаза сборки".
  • Теперь вы можете увидеть раздел Run script в середине ваших опций Build Phase, как показано выше.
  • Внутри тела Run script Build Phase вставьте script.

Вышеприведенная цитата взята из Crashlytics визуальный учебник, ссылка на это сообщение.

Примечание: Я изначально написал этот ответ на код ошибки Crashlytics: 202 при отправке файлов.

Ответ 5

Для меня проблема заключалась в том, что устройство было подключено к моему Mac:) Из этот источник:

Кроме того, если ваше устройство подключено к вашему Mac, отладчик XCode также вступит в силу. Поэтому просто отключите устройство перед тестированием:)

Ответ 6

С сайта RayWenderlich:

Вы не получите отчетов о сбоях, если Xcode перехватит событие аварии! Чтобы все приведенные ниже примеры работали, необходимо создать и запустить затем нажмите кнопку остановки на Xcode. Таким образом, вы будете имеют последнюю версию, установленную на устройстве. Когда это вы можете запустить приложение на самом устройстве, а затем свернуть его все, что ты хочешь! Все сбои на вашем устройстве iOS будут пойманы и отправляется серверному компоненту службы, которую вы интегрировали в приложение. Отчеты о сбоях обычно отправляются на сервер следующей время, когда вы запускаете приложение, поэтому выполните следующие шаги, чтобы создать сбой отчет на сервере: Создание и запуск на Xcode. нажмите кнопку остановки. Запустите приложение на устройстве iOS. Сделайте приложение аварийным. Бег приложение снова.

Ответ 7

Удостоверьтесь, что вы не слишком рано нажимаете на ошибку.

Установите [Crashlytics sharedInstance].debugMode в YES;

Следите за

Crashlytics] Settings loaded

в журналах консоли Xcode.

Затем принудительно завершите работу и перезапустите приложение, и об этом сообщается об аварии.

Ответ 8

У меня возникла аналогичная проблема при попытке выполнить код аварийного сбоя.

Crashlytics.sharedInstance().crash()

Я запускал свое приложение с устройства без Xcode, и авария не появлялась на панели Crashlytics Dashboard. Для меня это был следующий совет с сайта Crashlytics:

  • Обязательно запустите приложение после сбоя, чтобы авария могла быть загруженным

Я прокомментировал вышеупомянутый вызов crash() и перезапустил приложение. Тогда авария появилась на панели инструментов.

Ответ 9

Crashlytics работает для меня до сих пор. Я не знаю, почему, но теперь это не работает.

Вы должны включить режим отладки на

[Crashlytics sharedInstance].debugMode = YES;

Моя проблема здесь Код ошибки Crashlytics: 202 при отправке файлов: (

Ответ 10

Вы пытались запустить [[Crashlytics sharedInstance] crash] на устройстве и посмотреть, не сообщается ли это об этом? Существует несколько причин, по которым Crashlytics может не работать, включая других аварийных журналистов и т.д.

Ответ 11

Если вы не загружаете файл dSYM, Crashlytics не будет показывать ваш сбой, даже если отчет успешно загружен.

Вы можете столкнуться с этой проблемой, если вы настроили build- script только для работы на вашем CI-сервере. Затем, если вы скопировали свое приложение на свой телефон с помощью xcode и запустили его без привязки к отладчику, отчет будет загружен, но проигнорирован из-за отсутствующего файла dSYM.

Ответ 12

Это для xcode 9, от crashlytics 3.4.0 STEP1 STEP2

После этого будьте терпеливы и подождите несколько минут.

Ответ 13

Это сработало для меня,

Если вы тестируете iDevice, просто отключите iDevice с помощью Xcode и запустите приложение. Теперь, если он разбился, он будет обновлен на панели инструментов.

Ответ 14

Иногда для отображения журналов требуется некоторое время. Я могу найти их через 15-20 минут

Ответ 15

Я нашел решение, используя следующие шаги:   1. Перейдите к схеме редактирования   2. Запуск → Информация   3. Измените конфигурацию сборки для выпуска.   Теперь запустите приложение. Вы получите почту.

Ответ 16

Одна из проблем, которые я чувствую, что в фазе Run Script это должна быть отдельная фаза Run Script для CrashLytics. Когда был пробег Script

./Fabric.framework/run

С некоторыми из моих других script, все было в порядке, отчет о просмотре журнала CrashLytics представлен, но ничего не было в веб-интерфейсе.

Когда я добавляю еще одну фазу Run Script только при выполнении Fabric, она выглядит как волшебство:)

Моя первая попытка была с cocoapods, но это не сработало. Когда я вручную добавляю все фреймворк и отдельную рабочую фазу Script.

Ответ 17

Я решил, сняв флажок "Запустить Script только при установке" в Run Script (один для Fabric (crashlytics))

enter image description here