【发布时间】:2016-04-09 19:19:36
【问题描述】:
由于某种原因,我的权限检查对话框每次都会显示,但它应该只显示一次:
我有以下代码检查我的onCreate() 中的短信权限:
if (ContextCompat.checkSelfPermission(MainActivity.this,
Manifest.permission.READ_CONTACTS)
!= PackageManager.PERMISSION_GRANTED) {
// Should we show an explanation?
if (ActivityCompat.shouldShowRequestPermissionRationale(MainActivity.this,
Manifest.permission.SEND_SMS)) {
Toast.makeText(MainActivity.this, "You should enable", Toast.LENGTH_SHORT).show();
/*ActivityCompat.requestPermissions(MainActivity.this,
new String[]{Manifest.permission.SEND_SMS}, 1001
);*/
} else {
// No explanation needed, we can request the permission.
ActivityCompat.requestPermissions(MainActivity.this,
new String[]{Manifest.permission.SEND_SMS}, 1
);
}
}
问题是,即使用户确实在onCreate 中单击启用,应用程序也会在用户下次打开应用程序时打开权限对话框。不应该授予权限,并且对话框不再显示吗?
【问题讨论】:
-
您正在检查
READ_CONTACTS并请求SEND_SMS
标签: java android xml string algorithm