Работа с приложением
Приложение упало: найти причину
От уведомления о крэше к точной ошибке в Logcat — отфильтровать и скачать её для баг-репорта.
Зачем: «приложение закрывается, когда жму Buy» — с таким баг-репортом разработчикам сложно что-то сделать. Стектрейс с устройства сразу говорит им файл и строку. Здесь он достаётся в два клика.
Что происходит
Заголовок раздела «Что происходит»Logcat — это системный журнал Android: приложения и система пишут в него, что делают, а при крэше там остаётся полный текст ошибки.
- Приложение падает: Android показывает на экране «keeps stopping».
- Holtdroid это замечает и показывает уведомление с первыми строками ошибки. Нажмите в нём Logcat.
- Откроется вкладка Logcat. Красные строки — это ошибки: имя исключения,
его сообщение и строки, начинающиеся с
at, показывают, где в коде это случилось. - Сузьте поиск: This app / Everything переключает между строками вашего приложения и всего устройства, фильтр уровня оставляет только ошибки, а текстовое поле ищет тег или слово.
- Download сохраняет то, что сейчас показано, — готовый файл для тикета.
- После крэша приложение остаётся закрытым. Restart app в карточке App запускает его снова.
Полезно знать
Заголовок раздела «Полезно знать»- Журнал собирается с момента, когда устройство готово, и не теряется при перезапуске приложения и установке другой сборки. Крэш десятиминутной давности тоже можно найти.
- This app следит за вашим приложением по его user id, поэтому видит все его процессы и не теряет их после перезапуска.
- Для баг-репорта со всем сразу (скриншот, журнал, сведения об устройстве) есть кнопка Bundle в карточке Device.
Если не работает
Заголовок раздела «Если не работает»- Уведомление не появилось: приложение могло закрыться без крэша, например само вызвало
finish()или его убила система из-за памяти. Посмотрите Logcat в режиме Everything с уровнем Error. - Вкладки Logcat нет или она чего-то ждёт: вкладка работает через ADB устройства, а в чужой сессии он вам недоступен.
- Ошибка в веб-части приложения (белый экран, не работает кнопка): смотрите консоль DevTools; ошибки JavaScript не роняют Android-приложение.