第一步,检查app拥有的权限。
if(ContextCompat.checkSelfPermission(
mActivity,Manifest.permisson.READ_CONTACTS)
!= PackageManager.PERMISSION_GRANTED) {
//当前Activity没有获得READ_CONTACTS权限时
}else{
//否则已允许
}
第二步,申请权限。
ActivityCompat.requestPermissions(
mActivity,
new String[]{Manifest.permission.READ_CONTACTS},
REQUEST_CODE_PERMISSION_CONTACTS);
第三步,权限申请回调方法。
@Override
public void onRequestPermissionsResult(int requestCode, String permissions[], int[] grantResults) {
switch (requestCode) {
case REQUEST_CODE_PERMISSION_CONTACTS: {
if (grantResults.length > 0 && grantResults[0] == PackageManager.PERMISSION_GRANTED) {
//用户已授权
} else {
//用户拒绝权限
}
return;
}
}
}