检测开发者设置'不保留活动'

时间:2012-08-09 16:08:55

标签: java android

如何检测设备是否在开发者选项中设置了“不保留活动”。 我在settings-class中找不到这个值。

我需要这个设置才能知道,因为当“不保持活动”被激活时,我的应用程序会遇到问题。 示例:我有一个主要活动和一个子活动。当我从main切换到sub并从sub切换回main时,主活动将再次启动。这是因为之前的主要活动被杀死了。因为我在主要活动中加载了很多,所以在重复开始时该应用程序无法使用。

或者有什么方法可以解决这个问题吗? 如果没有激活此设置,则没有问题。

问候

2 个答案:

答案 0 :(得分:8)

是否可以通过代码检测该标志?

在API文档中,它被称为Settings.System.ALWAYS_FINISH_ACTIVITIES

  

如果为1,活动经理将在不再需要时立即积极完成活动和流程。如果为0,则使用正常的延长寿命。

     

常数值:“always_finish_activities”

要获取代码中的值:

int value = Settings.System.getInt(getContentResolver(), Settings.System.ALWAYS_FINISH_ACTIVITIES, 0);

查看source code,了解Settings.apk是如何做到的。

答案 1 :(得分:1)

我不确定你能否,当我回答别人时,你为什么要这样做?您当然不应该使用该标志来更改您的应用程序的行为。

Don't keep activities?