在 android 内检测到应用程序崩溃

Detect app crash in android

我正在构建一个有时会崩溃的应用程序,我想知道它在我下次打开它时崩溃了,所以我可以向用户建议一些 post-crash 选项。 我怎样才能检测到崩溃? 另外我希望能够在崩溃之前保存用户的工作,我的意思是实时检测崩溃,我可以在不知道崩溃在哪里的情况下做到这一点吗?

您可以使用 try/catch blocks,然后在您的 catch 中发送有关 Exception 的详细信息。

您将需要知道崩溃的位置,以便将 try/catch 块设置在正确的位置,呃,catch 崩溃并保存数据或随心所欲。

如果您想更详细地考虑,这称为 "graceful" 终止。

不幸的是,Java destructor/finalize 方法和 onDestroy 等生命周期方法都没有 try/catch 块那么健壮,所以我恐怕这是您唯一的选择,我们中有多少人处理异常预防。没有人会故意提供崩溃的用户体验,更不用说丢失数据了。

有实现 UncaughtExceptionHandler as mentioned in these answers 并在某些文件中写入崩溃报告或以其他方式使用它。

拍一张 ACRA library。您可以对其进行配置,以便在发生崩溃时可以控制它,甚至可以通过电子邮件发送崩溃日志

ACRA 已经提到了。

然而对于付费版本,我发现 BugSnag 非常擅长这一点。 或者,如果您想更进一步,请尝试 AppSee.

A​​ppSee 甚至有崩溃发生的视频记录会话。它来自于点击第二个列表上的那个按钮、菜单按钮,甚至是当用户在您的 viewpager 中向左滑动时。