ContextCompat类的checkSelfPermission方法用于检测用户是否授权了某个权限。
checkSelfPermission()方法需要传递两个参数,第一个参数需要传入Context,第二个参数需要传入需要检测的权限,如打电话的权限:Manifest.permission.CALL_PHONE。方法返回值为-1(PackageManager.PERMISSION_DENIED)或者0(PackageManager.PERMISSION_GRANTED)。若返回值为GRANTED则为已授权,否则就需要进行申请授权了。
实例:
ContextCompat.checkSelfPermission(MainActivity.this,
Manifest.permission.CALL_PHONE) = PackageManager.PERMISSION_GRANTED //若相等则为已授权
需要注意的是在AS里面选中Manifest然后点Alt+Enter,会出现两个提示,一个是引入Manifest(java.util.jar),另一个是引入Manifest(android),这里需要import的是Manifest(android)的包,不然会报错:cannot resolve 'permission'