【问题标题】:Activity crash lifecycle method - androidActivity 崩溃生命周期方法 - android
【发布时间】:2016-11-15 21:30:25
【问题描述】:

我正在开发一个应用程序,它在崩溃的情况下需要在崩溃时保存一些数据。现在,我将数据保存在 onDestroy() 中,如下所示:

@Override
protected void onDestroy() {
    saveState();
    super.onDestroy();
}

但每当我故意让我的应用程序崩溃时,不会调用 onDestroy() 并且不会保存我的数据。

我的问题是,如何在崩溃时保存我的数据?我应该采取哪种方法? 因为我还需要保存崩溃的时间,所以这是强制性的。

【问题讨论】:

标签: java android android-activity crash backup


【解决方案1】:

UncaughtExceptionHandler 非常适合捕捉崩溃。

【讨论】:

  • 我在我的代码中实现了这个处理程序,它就像一个魅力!谢谢
【解决方案2】:

很遗憾,您无法通过onDestroyonStop 方法检测到突然崩溃。您的选择是:

  1. 使用 try-catch 块。将可能崩溃的地方包裹在 try 块中,并在 catch 块中捕获异常,然后就可以优雅地关闭应用了。

  2. 在易受攻击的地方实施 try-catch 块。然后,您可以将 crashlytics 集成到您的应用程序中,并将异常记录到 catch 块中的 crashlytics 中。让几个用户彻底使用应用程序,然后在 crashlytics 分析中,您可以看到应用程序实际崩溃的大部分时间。

  3. 使用acra。它捕获异常,检索大量上下文数据并将它们发送到您选择的后端。

您可以随时在 catch 块中记录系统时间并将您的数据保存在那里。

【讨论】:

  • 感谢您的回复!我将尝试实现这一点并更新我的帖子
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2013-04-06
  • 2013-07-10
  • 1970-01-01
  • 1970-01-01
  • 2019-02-02
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多