大致位置 Android 12 未显示新的位置权限对话框

问题描述

我试图通过处理权限对话框中的大致位置情况来符合 Android 12 对位置权限的更改。但是当在带有 Android S (android-S\google_apis\x86_64) 的枚举器上运行它时,我仍然得到与以前版本的 android 相同的对话框:

enter image description here

这是我的设置:

android {
    compileSdkVersion "android-S"
    buildToolsversion "30.0.3"
    defaultConfig {
        minSdkVersion 23
        targetSdkVersion "S"
        ...
    }
    ...
}

遵循文档中的确切示例:https://developer.android.com/about/versions/12/approximate-location

val locationPermissionRequest = registerForActivityResult(
        ActivityResultContracts.RequestMultiplePermissions()
    ) { permissions ->
        when {
            permissions.getorDefault(Manifest.permission.ACCESS_FINE_LOCATION,false) -> {
                // Precise location access granted.
            }
            permissions.getorDefault(Manifest.permission.ACCESS_COARSE_LOCATION,false) -> {
                // Only approximate location access granted.
            } else -> {
                // No location access granted.
            }
        }
    }

locationPermissionRequest.launch(arrayOf(
    Manifest.permission.ACCESS_FINE_LOCATION,Manifest.permission.ACCESS_COARSE_LOCATION))

知道缺少什么才能获得新的位置权限对话框吗?

编辑:

Build.VERSION.SDK_INT = 30
Build.VERSION.RELEASE = "11"
Build.VERSION.PREVIEW_SDK_INT = 1
Build.VERSION.RELEASE_OR_CODENAME = "S"

解决方法

我使用 Android S Preview Android SDK Platform S revision 5 让它工作,之前在 SDK 管理器中有 revision 4

它正在使用上面发布的 Build.VERSION.SDK_INT 等。

但网络连接问题似乎仍然存在:Emulator for Android 12 preview no connection

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...