启动设置 Activity 时 Android 9 后退按钮无法正常工作

标签 android android-activity android-9.0-pie

在我们的应用程序中,我们有一个特殊的按钮,可将用户带到网络设置页面。我们使用以下代码

 Intent intent=new Intent(Settings.ACTION_WIRELESS_SETTINGS);
 startActivity(intent);

Android 9 中的此实现存在几个问题。

  1. 出于某种原因,当网络和 Internet 设置启动时,我看到一个后退按钮。按后退按钮会将用户带到“设置”页面,而不是将他们带回我的应用程序。这根本不可取。
  2. 更糟糕的是,按下系统后退按钮会使用户完全返回启动器,从而完全破坏导航后退堆栈。

enter image description here

然而,在 Android 8 中,一切工作正常,顶部没有软件后退按钮,系统后退按钮也没有上述行为。

enter image description here

Android 9 有什么问题?我是否应该将特殊的 Activity 操作标志放入启动网络设置的 Intent 中?

附注

两款手机均为诺基亚 2.1,一款搭载 Android 8.1,一款搭载 Android 9.0。

最佳答案

Android 9 实现是正确的,这就是他们更改它的原因:

https://developer.android.com/training/design-navigation/ancestral-temporal

The Up button appears in the app bar and is used to navigate within an app based on the hierarchical relationships between screens.

关于启动设置 Activity 时 Android 9 后退按钮无法正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55076066/

相关文章:

Android 9 AAC 解码器使用 ffmpeg 编码文件输出零样本

java - 将来自 getCallingActivity 的 Activity 与另一个进行比较

java - 媒体投影需要 Android Pie 和 Q 中 ServiceInfo.FOREGROUND_SERVICE TYPE_MEDIA_PROJECTION 类型的前台服务

android - 旋转 bmp 并将其正面朝上显示

android - 从 SQLite 数据库流式传输音频

javascript - Phonegap 2.0.0 keyup 事件

android - 启用 android.useAndroidX 时出现 "AndroidX dependencies"错误

android - 当应用程序在 React Native Android 中进入后台时如何隐藏当前屏幕

android - 处理选项卡、操作栏、 Activity 和 fragment

android - relativelayout 中的 Textview 和按钮在 android oreo 和 pie 中不可见,但在其他 android 版本中完全可见