退出 Android 应用程序的最佳方法? [复制]

2023-11-30

我正在寻找一种通过代码退出我的 Android 应用程序的方法。 是的,我知道,我不应该这样做,因为当你按下后退按钮时 android 会处理它,但我有一个定制的流程,迫使我实现这个。我已经搜索了一段时间,找到了多个答案:

  • 不应该这样做 => 没有选择。
  • 在我的活动中调用 finish() => 仅针对 1 个活动,而不是整个应用程序。
  • 使用特殊标志启动第一个活动的意图 => 我有多个入口点,所以不是真正的选择。
  • 只是杀死我自己的进程 => 不确定这个,这会在所有活动中调用 onDestroy() 方法吗?我的后台服务会继续运行吗? (不应该停止)

所以我想知道,是否还有其他选项可以退出我的应用程序,或者我真的仅限于这些选项吗? 如果确实没有其他选择,那么我正在考虑在我的 Application 类中创建我的活动的所有实例的列表,然后循环它们以对它们调用 finish() 。但我不知道这是否是处理此问题的正确方法。

这就是为什么我在这里问我的问题,这是关闭我的应用程序的最佳方式?

Edit:我或多或少解决了这个问题。我有一个我的活动的 WeakReference 列表。在每个 onCreate 中,我将活动添加到列表中。然后,当我想退出应用程序时,我只需循环列表并调用 finish() 即可。问题是:如果列表变得太大,它将无法完成我所有的活动,因为 android 已经销毁了它们。所以每次我确定我不再需要它们时,我都会完成它们。就我而言,列表的增长不能超过活动的 3/4,因此无需再担心活动未完成。另外,通过这种方法,我不必破坏自己的进程。


你不应该这样做,但无论如何,如果你坚持:

System.exit(0);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

退出 Android 应用程序的最佳方法? [复制] 的相关文章

随机推荐