java Android 13(Tiramisu)模拟器调试应用通知无法打开

xxhby3vn  于 2022-10-30  发布在  Java
关注(0)|答案(1)|浏览(165)

知道如何在应用上启用权限吗?默认情况下,Android 13 Emulator上的权限是禁用的。它在其他模拟器上工作,只是在Android 13 Emulator上不工作。默认情况下,添加Firebase消息传递会将Manifest.permission.POST_NOTIFICATIONS添加到Manifest中。

如果您有任何问题,请联系我们。
自动返回isGranted =假

8wigbo56

8wigbo561#

在清单中:

<uses-permission android:name="android.permission.POST_NOTIFICATIONS" />

这是如何请求和检查api13的运行时结果

private void request_notification_api13_permission() {
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) {
        if (this.checkSelfPermission(Manifest.permission.POST_NOTIFICATIONS) != PackageManager.PERMISSION_GRANTED) {

            ActivityCompat.requestPermissions(this,new String[]{Manifest.permission.POST_NOTIFICATIONS}, 22);
        }
    }
}

@Override
public void onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults) {
    if (requestCode == 22) {
        if (grantResults.length > 0)
            if (grantResults[0] == PackageManager.PERMISSION_GRANTED) {

               // permission granted, perform required code

            } else {
                // not granted
            }
    }
}

调用函数将如下所示:

request_notification_api13_permission();

相关问题