是否可以区分以下内容:
A. Activity 被操作系统销毁后正在重新创建。例如,如果设备启用了“不保留活动”并且用户将我的应用程序发送到后台,然后再次将其带到前台。
B. 应用程序崩溃后正在重新创建活动。
是否可以区分以下内容:
A. Activity 被操作系统销毁后正在重新创建。例如,如果设备启用了“不保留活动”并且用户将我的应用程序发送到后台,然后再次将其带到前台。
B. 应用程序崩溃后正在重新创建活动。
我不认为有这样的方法,但我不相信当活动崩溃但不能 100% 确定时调用 onStop 或 OnDestroy。
如果不是,则在 onStop 或 onDestroy 中设置一个共享首选项,即shutdownCorrectly
设置为 true。
然后,当活动打开时,检查共享首选项是否shutdownCorrectly
运行您的正常代码并将共享首选项设置为 false。如果您检查时共享首选项为 false,则意味着应用程序已崩溃,因此您可以运行其他代码。
希望这可以帮助。
有一个名为Thread.UncaughtExceptionHandler的接口可用,它允许您检测由于未处理的异常而导致的崩溃。
例子:见这里