是的,在Android 12及更新版本中,有一种新的应用程序逻辑来使用新的隐私指示器来请求权限。这个逻辑称为 Permission Request API。
使用该API,您可以请求应用程序需要的权限,并显示一个以色块形式显示的隐私指示器,以向用户说明为什么应用程序需要该权限。下面是一个示例代码:
Kotlin:
val activity: Activity = this // 要使用API的Activity
val permission: String = Manifest.permission.CAMERA // 要请求的权限
val requestCode: Int = 123 // 应用程序定义的请求代码
if (PermissionRequestApi.isPermissionIndicated(permission, activity)) {
// 如果权限已经被允许,则执行应用程序的相应操作
} else {
// 请求应用程序所需的权限,并显示隐私指示器
PermissionRequestApi.requestPermission(activity, permission, requestCode)
}
Java:
Activity activity = this; // 要使用API的Activity
String permission = Manifest.permission.CAMERA; // 要请求的权限
int requestCode = 123; // 应用程序定义的请求代码
if (PermissionRequestApi.isPermissionIndicated(permission, activity)) {
// 如果权限已经被允许,则执行应用程序的相应操作
} else {
// 请求应用程序所需的权限,并显示隐私指示器
PermissionRequestApi.requestPermission(activity, permission, requestCode);
}
请注意,您必须在Android 12及更高版本上运行应用程序,以使用此逻辑。此外,您的Android Studio版本也必须是4.3或更高版本,以支持该逻辑。
上一篇:Android12及更高版本的应用程序要求为'android:exported'属性指定明确的值。
下一篇:Android12及以上版本的应用程序需要显式指定`android:exported`的值,但我已经将其设置为true和false