android6.0权限管理

在开发中很多用到手机拍照选择图片,在低版本中只要在AndroidManifest.xml中声明

<uses-permissionandroid:name="android.permission.CAMERA" />

即可,但是在6.0手机上运行就会直接挂掉,提示

Permission Denial: starting Intent {act=android.media.action.IMAGE_CAPTURE.....with revoked permission android.permission.CAMER

只要在代码中进行权限判断就好了,可以直接在主activity中或者在具体用到权限的地方。


if(ContextCompat.checkSelfPermission(
 activity,Manifest.permission.CAMERA)!=                                                            PackageManager.PERMISSION_GRANTED) 
{ActivityCompat.requestPermissions(activity,
new String[]{Manifest.permission.CAMERA},
1);
}

在activity中重写onRequestPermissionsResult方法,具体如下

@Override

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

if(requestCode == 1) {

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

      //权限获取成功

       }else{

       //权限被拒绝

       }

  }
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容