【问题标题】:How can I let android system kill my application when it runs in backgroud?如何让android系统在后台运行时杀死我的应用程序?
【发布时间】:2015-05-06 03:23:55
【问题描述】:

我正在研究 Android Activity lifecycle。而且我知道在应用程序进入后台后,如果具有更高优先级的应用程序需要内存,它可能会被系统杀死,但使用捆绑包保存活动。当用户回来时,系统会恢复它,让用户感觉很好!

我想知道这个情况是怎么弄的,我想先看到我的应用被杀掉,而不是在被用户使用的时候才看到,来评估它是否强大。因为发生这种情况时它可能会崩溃。

【问题讨论】:

  • 在你的 onPause() 方法上调用 finish()

标签: android debugging


【解决方案1】:

在手机的开发者选项中启用“不保留活动”。一旦您将其置于后台,这将强制终止您的应用。

有关其工作原理的更多详细信息,请参阅此问题: Whats the main advantage and disadvantage of "do not keep activities" in android

有关如何启用它的更多信息,请参见此处: http://www.pcadvisor.co.uk/how-to/google-android/3590299/32-useful-things-you-can-do-in-android-developer-options/

【讨论】:

  • 非常感谢,这对我帮助很大。但是,我需要更多来解决这个问题。即使我打开了它,也没有内存短缺迫使系统实际从内存中删除对象。也就是说它不会造成我的应用程序在内存不足时被系统杀死的情况。
【解决方案2】:

您可以通过将您的应用发送到后台并通过adb shell am kill your.package.name 杀死它来模拟它。

【讨论】:

    猜你喜欢
    • 2021-11-29
    • 1970-01-01
    • 1970-01-01
    • 2022-09-24
    • 2018-03-08
    • 2018-02-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多