Android M权限对话框没有被点击“拒绝”而被解雇

在我的应用中,我正在访问手机通讯录。所以我正在处理Android棉花糖设备中的相同权限。权限对话框按预期显示。问题:每当我点击对话框的拒绝按钮时,对话框都不会被解除。 这里是我的代码:Android M权限对话框没有被点击“拒绝”而被解雇

private static final int REQUEST_READ_CONTACTS = 0; 

String[] PERMISSIONS = {Manifest.permission.READ_CONTACTS,,Manifest.permission.WRITE_CONTACTS};

在活动的onCreate:

if(!requestPermissionForContact(this, PERMISSIONS)){ 

ActivityCompat.requestPermissions(CurrentActivity.this, PERMISSIONS, REQUEST_READ_CONTACTS);

}

else{

getContactList(); //a method to accesses the contacts

}

requestPermissionForContact方法定义:

public boolean requestPermissionForContact(Context context,String... permissions){ 

if (android.os.Build.VERSION.SDK_INT >= Build.VERSION_CODES.M && context != null && permissions != null) {

for (String permission : permissions) {

if (ActivityCompat.checkSelfPermission(context, permission) != PackageManager.PERMISSION_GRANTED) {

if (ActivityCompat.shouldShowRequestPermissionRationale(EmergencyContact.this,

Manifest.permission.READ_CONTACTS)){

//Toast.makeText(this,"You gotta allow permission", Toast.LENGTH_LONG).show();

}

return false;

}

}

}

return true;

}

内onRequestPermissionResult:

@Override 

public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) {

//mPresenter.userRespondedForPermissionDialog(requestCode,REQUEST_READ_CONTACTS,grantResults);

switch (requestCode){

case REQUEST_READ_CONTACTS : {

if (grantResults.length >= 0 && grantResults[0] == PackageManager.PERMISSION_GRANTED) {

// Permission granted , Access contacts here or do whatever you need.

getContactList(); //Accessing the contacts

}

else{

Toast.makeText(this,"Oops you just denied the permission", Toast.LENGTH_LONG).show();

}

return;

}

}

}

问题:我面临的问题是点击拒绝,权限对话框没有被解雇。请帮忙。提前谢谢了。用于测试

设备:万普拉斯一个与Android 6.0.1棉花糖

回答:

我的问题是关于拒绝按一下按钮,同样的活性得到再次加载,这将导致权限对话再次出现。

以上是 Android M权限对话框没有被点击“拒绝”而被解雇 的全部内容, 来源链接: utcz.com/qa/264144.html

回到顶部