App 的targetSdkVersion<23,那么
ContextCompat.checkSelfPermission()
不会起作用,就算通过打开应用详情,设置了权限(允许或拒绝),ContextCompat.checkSelfPermission依然会返回0(表示权限允许)。
打开应用详情:
public void setPermission(){
Intent intent=new Intent("android.settings.APPLICATION_DETAILS_SETTINGS");
intent.setData(Uri.fromParts("package",getPackageName(),null));
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);
}
但可以通过PermissionChecker.checkSelfPermission检测权限,得到准确的权限(允许或拒绝)状态。
PermissionChecker.checkSelfPermission()