我正在使用此代码请求 CALL_PHONE 的许可,它在 api 级别 28 以下工作,但不能在该级别以上工作。在 api 级别 28 以下,如果未授予权限,它会显示授予权限的对话框,但在 28 以上,不会弹出任何对话框,我只收到 toast 消息。
if (ContextCompat.checkSelfPermission(ProcessingCallActivity.this, Manifest.permission.CALL_PHONE)
!= PackageManager.PERMISSION_GRANTED) {
// Permission is not granted
finish();
ActivityCompat.requestPermissions( ProcessingCallActivity.this, new String[]{Manifest.permission.CALL_PHONE},REQUEST_PHONE_CALL);
Toast.makeText(ProcessingCallActivity.this, "Call permission needed", Toast.LENGTH_SHORT).show();
}
最佳答案
在 list 中添加以下权限
<uses-permission android:name="android.permission.CALL_PHONE" />
删除 finish() 语句
关于java - 运行时权限不适用于 API 级别 28,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56911943/