防止android在崩溃后重新创建活动堆栈

Posted

技术标签:

【中文标题】防止android在崩溃后重新创建活动堆栈【英文标题】:Prevent android from recreating activity stack after crash 【发布时间】:2011-08-04 19:57:08 【问题描述】:

我有一个应用程序在堆栈下几层的活动中遇到异常。我还在状态栏通知+对话模式下使用 ACRA 进行崩溃报告。我看到的情况是,当我的进程因异常而被终止时,android 会重新创建活动堆栈,直到有问题的活动的父级。我想覆盖这种行为。如果我的应用程序崩溃了,我希望它保持崩溃状态。

在 android-developers 中有关于这个的讨论:

http://groups.google.com/group/android-developers/browse_thread/thread/b274cfa64b17f535/92d8da160be85748?lnk=gst&q=force+close+restarts#92d8da160be85748

我还阅读了此堆栈溢出线程中的讨论: Prevent Activity Stack from being Restored?

但我正在查看平台中是否有针对此技术的更新或更新的技术。现在,重启行为正在导致 ACRA 出现问题,因为一旦重新创建活动堆栈,崩溃报告通知就会被清除,从而使用户没有时间发送报告。

【问题讨论】:

***.com/questions/12560590/…的另一个相关讨论帖 【参考方案1】:

我也使用 ACRA,我发现在 @ReportCrashes 注释中添加 forceCloseDialogAfterToast=true 会抑制重启。但是,代价是您获得了 Android 强制关闭对话框。我不知道如何摆脱它并阻止应用重启......

【讨论】:

以上是关于防止android在崩溃后重新创建活动堆栈的主要内容,如果未能解决你的问题,请参考以下文章

没有有用的堆栈跟踪的 Android 应用程序崩溃

防止 Android 重新创建已经存在的活动

即使在操作系统终止应用程序后,Android 活动仍保留在堆栈中

防止在关闭屏幕时重新创建 Android 活动

如何修复在 Android 中崩溃的活动的重新启动?

带有 Phonegap 的 Android 应用程序在横向旋转时崩溃