我已经构建了一个 Android 应用程序。如果我通过后退按钮定期终止我的应用程序,则执行ws.conditional_formatting.add()
。但是当我杀死我的应用程序时(使用最近的应用程序按钮),onDestroy()
永远不会执行。我现在在主onDestroy()
的{{1}}方法中添加了以下内容:
onCreate(Bundle savedInstanceState)
稍后在主Activity
课程中,我添加了:
Thread.setDefaultUncaughtExceptionHandler (new Thread.UncaughtExceptionHandler() {
@Override
public void uncaughtException (Thread thread, Throwable e)
{
handleUncaughtException (thread, e);
}
});
不幸的是,当我终止我的应用程序时,Activity
方法永远不会被调用(当我通过后退按钮定期终止我的应用程序时,它也不会被调用)。
有什么问题?
我正在使用 Android 5.1。
答案 0 :(得分:0)
不幸的是,当我终止我的应用程序时,永远不会调用
handleUncaughtException()
方法(当我通过后退按钮定期终止我的应用程序时,它也不会被调用)。
Catching an exception(在 dalvik 中)并且杀死应用( Linux )进程本身就是不同的东西。除非应用程序抛出未捕获的异常,否则在这种情况下不会调用handleUncaughtException()
方法。
在Android上杀死应用时执行方法
从最近删除应用时,只保证Activity
onPause()
被调用Service
。但是你可能会被告知"通过def key = String.format('${#DataSource#%s}',context.parent.getLabel())
的回调。可以找到一些额外信息here或here。