Я создаю приложение, которое иногда сбой, я хочу знать, что он разбился в следующий раз, когда я открыл его, поэтому я могу предложить пользователю некоторые варианты после сбоя. Как я могу обнаружить сбой? Также я хочу, чтобы у меня была возможность сохранить работу пользователя до того, как она сработает, я имею в виду обнаружение сбоев в реальном времени, могу ли я сделать это, не зная, где он разбился?Обнаружение приложения сбой в android
ответ
Вам нужно будет знать, где он разбился, чтобы установить блоки try
/catch
в нужном месте, er, catch
сбой и сохранить данные или все, что вы имеете в виду.
Это известно как «изящное» окончание, если вы хотите рассмотреть его более подробно.
К сожалению, ни Java деструктор/завершить методы, ни методы жизненного цикла, такие как onDestroy
где-либо вблизи так надежен, как try
/catch
блоки, так что я боюсь, что это ваш единственный вариант, и как многие из нас иметь дело с предотвращением исключения. Никто не будет уверенно обеспечивать пользовательский опыт, который может привести к сбоям, а тем более к потере их данных.
Вы можете использовать try/catch
blocks, а затем отправить информацию о Exception
в свой catch
.
Есть реализация UncaughtExceptionHandler as mentioned in these answers и написать отчет о сбое в каком-либо файле или использовать его по-другому.
Возьмите взятый на ACRA library. Вы можете настроить его таким образом, чтобы всякий раз, когда произошел сбой, вы можете управлять им и даже отправлять журнал сбоев по электронной почте.
ACRA уже упоминалось.
Однако для платной версии я нашел BugSnag, это очень хорошо. Или, если вы хотите взять лишнюю милю, попробуйте AppSee.
У AppSee даже есть сеанс записи видео о том, как происходит авария. Это от нажатия этой кнопки во втором списке, кнопки меню или даже когда пользователь скользит в вашем представлении.
да ... я знаю этот метод, но я не хочу попробовать/поймать каждого, если – alon