从应用程序启动设备设置时出现奇怪的问题

时间:2016-08-10 15:06:21

标签: android

所以我在Android 5.0和6.0上运行我的应用程序。 在我的应用程序中,片段中有一个按钮可打开设备设置并转到位置屏幕:

Intent intent = new Intent(Settings.ACTION_LOCATION_SOURCE_SETTINGS);
getContext().startActivity(intent);

启动“设置”屏幕后,按HOME按钮,我将进入设备主屏幕。

然后我按下应用程序图标打开应用程序,这就是问题所在:

在Android 5.0中,我看到了启动设置屏幕的片段。

在Android 6.0中,我看到设置屏幕。我需要按后退按钮返回我的片段。

所需的行为是在Android 5.0中发生的行为。 设置屏幕不应计为应用程序使用的“最后”屏幕。

另一个重点,我不完全确定问题是由于不同的Android版本。在Samsung设备上会出现所需的行为,并且Nexus设备上会出现不良行为。也许它与此有关。

有什么方法可以解决这个问题吗? 谢谢!

1 个答案:

答案 0 :(得分:0)

我最终使用了:

Intent intent = new Intent(Settings.ACTION_LOCATION_SOURCE_SETTINGS);
intent.addFlags(Intent.FLAG_ACTIVITY_NO_HISTORY);
getContext().startActivity(intent);

解决这个问题。设备设置屏幕未添加到历史记录堆栈中,因此我始终返回正确的活动。