【发布时间】:2018-05-06 20:10:52
【问题描述】:
由于 android 从 Android 设置返回的方式,我的用户体验不一致。
在我的应用程序中,用户需要授予我的应用程序对ACTION_USAGE_ACCESS_SETTINGS 的访问权限,我通过以下方式访问:
Intent intent = new Intent(Settings.ACTION_USAGE_ACCESS_SETTINGS);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);
为我的应用程序打开设置后,我需要用户返回我的应用程序。我知道的唯一方法是让他们按下手机上的后退按钮(很想知道在切换设置后是否可以自动返回!!!?!)。
现在将发生以下两种情况之一:
1) 用户最近没有使用过android设置,所以它还没有打开(即在打开的应用程序抽屉中打开)。第一次按下后退按钮将根据需要将它们带到我的应用程序。
2) 用户最近使用过安卓设置。因此设置已经在应用程序抽屉中打开。现在,当用户按下返回时,Android 将带他们返回他们最近使用的每个设置页面(即返回按钮带他们浏览他们在 android 设置页面中的历史记录)。可能需要按 2、3 或 4 次后退按钮才能离开 Android 设置并返回到我的应用程序。这显然是糟糕的 UI/UX,我想知道是否有更好的方法?
我注意到在安装 Google 应用程序时,将设置切换为 ON 后,它会自动退出并返回到调用该设置的应用程序。能够做到这一点将是理想的,但我无法解决。
谢谢!
【问题讨论】:
-
一般来说,您可以通过摆脱
FLAG_ACTIVITY_NEW_TASK来帮助您的事业,因为您特别想将其纳入您自己的任务中。实际上,您不能保证返回按钮的行为,因为它受您链接到的应用程序的控制。 -
@CommonsWare,谢谢,这个改变意味着我只需要按两次后退按钮,这可以改善最坏的情况。我想你不知道为什么在安装 Google Apps 时,它会在将设置切换到 ON 位置后立即恢复到调用应用程序? (即,您滑动到 ON,然后无需按返回按钮即可切换回原始应用程序)这是只有 Google 才能实现的功能,还是有什么方法可以更改我的应用程序以使其成为可能?
-
“这个改变意味着我只需要按两次后退按钮”——第一次按 BACK 会带你去哪里?
-
意图启动到“具有使用访问权限的应用程序”设置页面,然后单击我的应用程序,这会将我带到我的应用程序的“使用访问权限”页面。然后,我可以将我的应用程序的“允许使用访问”切换为“开启”。按回一次将我带回“具有使用访问权限的应用程序”设置页面。按第二次将我带回到我的应用程序的调用活动。
标签: android android-navigation android-settings