本人是一介莽夫,话不多说,直接撸代码。
第一, 首先定义数组,将需要判断的权限添加进来 ,下面举例 添加修改删除权限。
//要申请的权限
private String[] mPermissions = {Manifest.permission.READ_CONTACTS,
Manifest.permission.WRITE_CONTACTS};
第二判断是否缺少权限
/**
* 判断是否缺少权限
*/
private static boolean lacksPermission(Context mContexts, String permission) {
return ContextCompat.checkSelfPermission(mContexts, permission) ==
PackageManager.PERMISSION_DENIED;
}
第三判断定义的权限集合
/**
* 判断权限集合
* permissions 权限数组
* return true-表示没有改权限 false-表示权限已开启
*/
public boolean lacksPermissions(Context mContexts,String [] mPermissions) {
for (String permission : permissionsREAD) {
if (lacksPermission(mContexts, permission)) {
Log.e("TAG","-------没有开启权限");
return true;
}
}
Log.e("TAG","-------权限已开启");
return false;
}
大功告成! 如需动态申请权限 建议使用 RxPermissions ,这个结合Rxjava很方便在Android6.0以上使用。