Firebase crashlytics android пример

Содержание
  1. Crashlytics — Android Setup
  2. Integrate Firebase Crashlytics In Android
  3. Create a Firebase Project and Add to Android
  4. Add Firebase to your Android project
  5. Install or update Android Studio to its latest version. Make sure that your project meets these requirements: Targets…
  6. Let’s get Started
  7. Step1: Add the Firebase plugin to your app
  8. Step 2: Add Dependency
  9. Sync the Project
  10. Step 3: Initialize Crashlytics
  11. Step 4: Run Your Project
  12. Other Interesting Tools
  13. Using Firebase Crashlytics
  14. Getting started#
  15. Sending reports to Crashlytics#
  16. Toggle Crashlytics collection#
  17. Forcing a crash#
  18. Crash types#
  19. Fatal crash#
  20. Отчеты о сбоях с Crashlytics
  21. 1. Зачем использовать Crashlytics?
  22. 2. Создаем проект в Android Studio
  23. 3. Установка плагина Fabric
  24. Шаг 1
  25. Шаг 2
  26. Шаг 3
  27. Шаг 4
  28. 4. Интеграция Crashlytics
  29. Шаг 1
  30. Шаг 2
  31. Шаг 3
  32. Шаг 4
  33. Шаг 5
  34. Шаг 6
  35. 5. Просмотр панели инструментов
  36. 6. Умышленное создание сбоя
  37. Понимание разницы между сбоями и жалобами
  38. Создание макета
  39. Метод crashNow()
  40. Авария!
  41. 7. Обзор панели инструментов
  42. 8. Другие особенности Crashlytics
  43. Приложение Fabric для мобильных устройств
  44. Журнал пойманных исключений
  45. Пользовательское журналирование
  46. Уникальная идентификация пользователей
  47. Бета-распределение
  48. Отключить Crashlytics для отладочных сборок
  49. Вывод

Crashlytics — Android Setup

Additional Android steps for Crashlytics integration

If you’re migrating from Fabric, make sure you remove the fabric.properties file from your Android project. If you do not do this you will not receive crash reports on the Firebase console.

If you’re using Expo, make sure to add the @react-native-firebase/crashlytics config plugin to your app.json or app.config.js . It handles the below installation steps for you. For instructions on how to do that, view the Expo installation section.

Adding Firebase Crashlytics Gradle Tools

These steps are required, if you do not add these your app will most likely crash at startup with the following Error:

«The Crashlytics build ID is missing. This occurs when Crashlytics tooling is absent from your app’s build configuration. Please review Crashlytics onboarding instructions and ensure you have a valid Crashlytics account.» _

1. Add the Google repository (if it’s not there already)

Add the following line to the android/build.gradle file :

2. Add the Firebase Crashlytics Plugin dependency

Add the following dependency to the android/build.gradle file:

3. Apply the Firebase Crashlytics Plugin to your app

Apply the com.google.firebase.crashlytics plugin by adding the following to the top of your android/app/build.gradle file:

4. (Optional) Enable Crashlytics NDK reporting

Crashlytics NDK reporting allows you to capture Native Development Kit crashes, e.g. in React Native this will capture crashes originating from the Yoga layout engine.

Add the firebaseCrashlytics block line to the android/app/build.gradle file:

5. Rebuild the project

Once the above steps have been completed, rebuild your Android project:

To create advanced custom local notifications in React Native; check out our free and open source Notifee library.

Copyright © 2017-2020 Invertase Limited. Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 3.0 License, and code samples are licensed under the Apache 2.0 License. Some partial documentation, under the Creative Commons Attribution 3.0 License, may have been sourced from Firebase.

All product names, logos, and brands are property of their respective owners. All company, product and service names used in this website are for identification purposes only. Use of these names, logos, and brands does not imply endorsement.

Источник

Integrate Firebase Crashlytics In Android

Aug 2, 2020 · 4 min read

Firebase Crashlytics is a real-time crash reporting tool. It helps by automatically collecting, analyzing, and organizing your crash reports.

It also helps you understand which issues are most important, so you can priorities those first and keep your users happy. It combines a real-time dashboard and alerts to keep you aware of your newest issues and any sudden changes instability.

Create a Firebase Project and Add to Android

The first step we need to take is to cre a te a Firebase project and add it to our Android app. At this point, I’ve already created a Firebase project, added it to a new project, and also included the Google Play Service JSON file. If you’re not familiar with this process, you can check out the official guide below.

Add Firebase to your Android project

Install or update Android Studio to its latest version. Make sure that your project meets these requirements: Targets…

Let’s get Started

The Google Services plugin uses a Google Services JSON file to configure your application to use Firebase. And the Crashlytics dependencies allow you to integrate the Crashlytics SDK into your app.

Читайте также:  Как отправить скриншот с андроида

Step1: Add the Firebase plugin to your app

First thing first, we need to add a firebase classpath In our project-level build.gradle file, like the below code snippet:

In your app-level build.gradle file, apply the Crashlytics Gradle plugin.

Step 2: Add Dependency

Now, we need to add a firebase crashlytics dependency on our Android project in the build.gradle file. To use the Crashlytics features, these are the dependencies we need:

Note: At the time of writing, the latest firebase-crashlytics version was 17.1.1 but you can use any latest stable release you want from MVN Repository.

Sync the Project

After successfully adding the dependency, just sync the project, as shown in the screenshot below:

Step 3: Initialize Crashlytics

Google recommends adding the Firebase SDK for Google Analytics to your app in addition to the Firebase Crashlytics SDK. Make sure you add Google Analytics version 17.2.3 or later in order to get real-time crashes.

Step 4: Run Your Project

Finally, we have successfully Integrated the Firebase Crashlytics in our project, Your device logs display the Firebase verification that initialization is complete.

Other Interesting Tools

There are so many other bug reporting tools as well, one I would like to share with you all is Shake.

Shake is a bug reporting SDK for iOS and Android apps. It’s a powerful tool that easily compares to other bug reporting tools like Instabug or Crashlytics.

With Shake SDK added to your app, your testers can report any bug in under 5 seconds. It will take all the extra info you as a developer need and send it to the Shake web dashboard.

Shake SDK automatically captures the following information:

  • Tester’s device model
  • App and OS version
  • Current View
  • History of taps
  • Carrier and WiFi details
  • CPU and memory usage
  • List of granted permissions
  • Screen resolution, screen orientation, and pixel density

Источник

Using Firebase Crashlytics

Getting started#

Enable Firebase Crashlytics in the Firebase console.

Until an error has been reported, you will see this screen.

To start using Firebase Crashlytics within your project, import it at the top of your project files:

Run an example, such as.

This will crash the currently running application. You will then need to manually re-run your application on your emulator for Crashlytics to submit the crash report to the Firebase Console.

Sending reports to Crashlytics#

To send report data to Crashlytics, the application must be restarted. Crashlytics automatically sends any crash reports to Firebase the next time the application is launched.

Toggle Crashlytics collection#

Call the setCrashlyticsCollectionEnabled method to toggle Crashlytics collection status.

For example to ensure it is disabled when your app is in debug mode you can do the following:

You can additionally read the current collection enabled status:

Forcing a crash#

You don’t have to wait for a crash to know that Crashlytics is working. To force a crash, call the crash method:

Your app should exit immediately after calling this method. After opening your app again after the crash Firebase Crashlytics will upload the crash report to the Firebase Console.

The error will be shown on the Firebase Crashlytics dashboard as an instance of FirebaseCrashlyticsTestCrash , with a message of This is a test crash caused by calling .crash() in Dart.

Crash types#

Fatal crash#

If you would like to record a fatal error, you may pass in a fatal argument as true . The crash report will appear in your Crashlytics dashboard with the event type Crash , the event summary stack trace will also be referenced as a Fatal Exception .

Источник

Отчеты о сбоях с Crashlytics

Russian (Pусский) translation by Ellen Nelson (you can also view the original English article)

В Android существует высокая вероятность сбоя вашего приложения даже после его ручного и автоматического тестирования. Это может быть связано с такими факторами, как несовместимость с различными уровнями API, размерами экрана, памятью телефона, доступностью аппаратных датчиков и настройкой поставщиков в соответствии с их индивидуальными устройствами. Crashlytics поможет вам в диагностике этих проблем.

Читайте также:  Как освободить место для андроида

Сбои делают ваших пользователей грустными и сердитыми. Они могут даже удалить приложение, если такое часто происходит. Затем дадут вашему приложению плохую оценку, отрицательный отзыв в магазине, а затем установят приложение вашего конкурента! На этом уже переполненном и конкурентном рынке приложений, очень важно для успеха вашего приложения, чтобы ваши пользователи были довольны.

Практически невозможно чтобы в вашем приложении не было сбоев, поэтому важно минимизировать количество падений приложения. Во время разработки и тестирования вы можете и не столкнуться с определенным сбоем, но в производстве, когда ваши пользователи будут активно его использовать, вы начнете видеть сбои. Использование надежного и мощного инструмента для создания отчетов о сбоях крайне важно для сбора информации о сбоях приложения, что даст вам представление о том, как вы можете исправить эту проблему и, чтобы ваши пользователи остались довольны.

В этом учебном пособии я покажу вам, как использовать Crashlytics, бесплатное и мощное, но легкое решение для создания отчетов о сбоях, которое входит в комплект инструментов разработчика Fabric от Twitter. Мы создадим простое приложение, которое выйдет из строя при нажатии на кнопку, чтобы мы могли получить информацию об падении с помощью Crashlytics.

1. Зачем использовать Crashlytics?

Вот несколько причин, по которым вы можете захотеть его использовать:

  • Простота настройки
  • Неограниченное количество приложений, пользователей и сбоев
  • Оповещения в реальном времени
  • Отчеты о сбоях в реальном времени
  • Углубленный анализ сбоев
  • Отслеживание исключений
  • Простота отправки отчета о сбоях
  • Распространение бета-версии приложения
  • Бесплатное мобильное приложение для мониторинга вашего приложения на ходу и получения предупреждений в реальном времени о важных проблемах
  • Бесплатно!

2. Создаем проект в Android Studio

Сначала запустите Android Studio и создайте новый проект «CrashlyticsTutorial» с пустым активити, с названием MainActivity .

3. Установка плагина Fabric

Для того чтобы интегрировать Crashlytics в ваше приложение, сначала вы должны создать учетную запись в Fabric. Поэтому заполните необходимые данные и вам будет выслано письмо с подтверждением.

Вы можете либо интегрировать Fabric с вашим проектом, либо загрузить плагин Android Studio, который автоматически изменит файлы, необходимые для интеграции, либо вручную изменить файл build.gradle. В данном уроке мы будем использовать самый простой способ, то есть плагин.

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

Шаг 1

Выберите Android в качестве платформы.

Шаг 2

Для пользователей Mac: выберите Preferences… в меню Android Studio / IntelliJ. Пользователи Windows и Linux: выберите Settings в меню File.

Шаг 3

Выберите Plugins, нажмите кнопку Browse Repositories и ищите «Fabric for Android».

Шаг 4

Нажмите кнопку Install, чтобы загрузить и установить плагин.

4. Интеграция Crashlytics

Шаг 1

Чтобы начать интеграцию Crashlytics в свой проект Android Studio, введите свои учетные данные для входа.

Шаг 2

Выберите Android проект CrashlyticsTutorial для и нажмите кнопку Next.

Шаг 3

Fabric отобразит список всех зарегистрированных вами организаций, поэтому выберите организацию, с которой вы хотите связать приложение, и нажмите кнопку Next.

Шаг 4

Fabric затем перечислит все свои наборы. Поскольку это учебник Crashlytics, выберите Crashlytics и нажмите кнопку Next.

Шаг 5

Нажмите кнопку Install.

Fabric хочет вносить изменения в файлы build.gradle, MainActivity.java и AndroidManifest.xml, поэтому нажмите кнопку Apply, чтобы изменения произошли.

Шаг 6

Создайте и запустите свое приложение, чтобы мы могли убедиться, что все настроено правильно. Если ваше приложение было успешно настроено, вы сразу же получите электронное письмо на адрес электронной почты, который вы использовали для регистрации на Fabric.

5. Просмотр панели инструментов

Теперь, когда Crashlytics был успешно интегрирован в наш проект, посетите главную панель, чтобы увидеть наше приложение: CrashlyticsTutorial.

При нажатии на проект откроется панель Crashlytics, в которой будут перечислены жалобы (issues). Пока у нас их нет; позже мы вернемся к этой панели, когда мы сознательно создадим сбой программы.

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

Набор ответов (Answers kit) предоставляет статистику в реальном времени о том, как используется ваше приложение, включая номера активных пользователей, продолжительность сеанса, рейтинг стабильности и продолжительность использования.

6. Умышленное создание сбоя

Понимание разницы между сбоями и жалобами

Разница между сбоями и жалобами (issues) заключается в том, что Crashlytics совмещает похожие сбои с жалобами (определенные строки кода, которые, видимо, вызывают одну и ту же проблему). Например, если у вас есть 100 000 сообщений о падении вашего приложения, это может быть связано с 60 жалобами.

Читайте также:  Как платить телефоном с nfc андроид нфс вместо карты

Давайте намеренно создадим сбой и просмотрим зарегистрированную жалобу на панели инструментов.

Создание макета

Вот файл макета MainActivity :

Метод crashNow()

Измените класс MainActivity , чтобы запустить метод crashNow() , который вызовет исключение RuntimeException при нажатии на кнопку.

Авария!

Запустите приложение и нажмите кнопку вызова сбоя.

7. Обзор панели инструментов

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

Когда вы нажимаете на проблему, она открывает страницу, на которой вы получаете подробный отчет об аварии. Страница собирает все произошедшие сбои.

Основные части этого пользовательского интерфейса:

Название проекта и пакета, включая номер строки, в которой произошел сбой

Фильтр недавних сбоев

Общее количество сбоев

Общее количество пользователей, пострадавших в результате сбоя

Переключатель, чтобы отметить проблему закрытой или открытой

Диаграмма количества аварий в день

Кнопка для распространения проблемы через Twitter или с членами вашей команды

Приблизительынй процент устройств с авариями

Процент сбоев, которые произошли, когда приложение было в активно

Процент устройств с авариями, которые были рутованы

Распределение названий моделей устройств со сбоями

Распределение ОС пострадавших устройств

Загрузить трассировку стека исключений в виде .txt файла

Расширяемое представление для трассировки стека

Просмотр детального отчета о каждой отдельной аварии.

На этой странице вы также можете просматривать и писать заметки о каждом сбое.

8. Другие особенности Crashlytics

Приложение Fabric для мобильных устройств

В магазине Fabric также есть бесплатное мобильное приложение, доступное в Google Play Store. С мобильным приложением вы получаете мгновенное уведомление при каждом критическом сбое, а также некоторые данные, позволяющие понять проблему: распределение “пострадавших” устройств и платформ, трассировка полного стека, количество пострадавших пользователей, заметки о проблеме, и возможность поделиться проблемой с членами команды. Все эти данные обновляются в режиме реального времени.

Журнал пойманных исключений

Crashlytics также позволяет вам регистрировать исключения, попадающие в блок catch , используя Crashlytics.logException(Exception) .

Все зарегистрированные исключения будут отображаться в панели инструментов Fabric, как «некритические» проблемы. Crashlytics обрабатывает исключения в выделенном фоновом потоке, поэтому регистрация исключений не будет блокировать пользовательский интерфейс приложения, а влияние на производительность вашего приложения будет небольшим.

Пользовательское журналирование

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

Помимо появления в вашем отчете, он также будет добавлен в Android LogCat. Чтобы этого не происходило, вместо этого используйте:

Как в примере ниже:

Уникальная идентификация пользователей

Чтобы однозначно идентифицировать конечного пользователя вашего приложения в приборной панели, для легкой отладки, Crashlytics имеет следующие методы:

Используйте Crashlytics.setUserIdentifier для предоставления идентификационного номера, токена или хэшированного значения, которое однозначно идентифицирует конечного пользователя вашего приложения без раскрытия или передачи его каких-либо персональных данных.

Бета-распределение

Если вы хотите, чтобы группа пользователей, участвовала в бета-тестировании вашего приложения, чтобы получить ранние отзывы, перед официальным релизом вашего приложения в паблик, у Crashlytics есть очень полезный бесплатный инструмент под названием Beta. Я не буду вдаваться в это здесь, но ознакомьтесь с официальными документами для получения дополнительной информации.

Отключить Crashlytics для отладочных сборок

Вы можете отключить Crashlytics для отладочных сборок, что ускорит процесс отладки.

Сначала добавьте это в свой файл build.gradle:

Затем отключите Crashlytics Kit во время выполнения.

Вывод

Crashlytics очень эффективен и полезен для эффективных отчетах о сбоях. В этом уроке вы узнали:

  • Как интегрировать Crashlytics в ваш проект Android
  • Какие представление о проблеме может дать вам панель инструментов Crashlytics
  • Как записывать обнаруженные исключения
  • Как вести пользовательские журналы
  • Как уникально идентифицировать пользователей для легкой отладки
  • Как отключить Crashlytics для отладочных сборок

Чтобы узнать больше о Crashlytics, вы можете обратиться к его официальной документации. Вы также можете ознакомиться с некоторыми из наших других обучающих программ по облачным сервисам для разработки Android.

Источник

Оцените статью