【问题标题】:Callback before Force Close of Android Activity?强制关闭Android Activity之前的回调?
【发布时间】:2010-07-23 07:05:16
【问题描述】:

我希望在我的应用崩溃之前执行一些紧急清理代码。我尝试使用 onDestroy()、onFinal() 和 finalize() 无济于事。这在 Android Activity 中是否可行?

【问题讨论】:

标签: android


【解决方案1】:

好吧,我建议您一开始就不要让您的应用崩溃。如果有什么东西可能会崩溃,只需在它周围放置一个 try/catch 并正确处理它。

或者,作为某种全局try/catch,您可以使用Thread.setUncaughtExceptionHandler()。最后,您甚至可以考虑Runtime.addShutdownHook,但这很可能是个坏主意。

【讨论】:

  • 我会试试这个。我正在使用硬件加速器,因此当 Android 加载我的新程序时,它不会调用 stop 或任何其他方法,这会导致我的其他进程处于错误状态。
【解决方案2】:

只需实现错误处理,然后调用您的清理代码。

try {
...
...
...
} catch (Exception e) { 
cleanupcode();//cleanup code execute just before my app crashes
e.printStackTrace();
}

您不会看到强制关闭对话框,但如果您想强制关闭,只需调用

   super.finish();

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-05-08
    • 1970-01-01
    • 1970-01-01
    • 2013-07-20
    • 2011-06-13
    • 1970-01-01
    相关资源
    最近更新 更多