您的位置:首页 > 移动开发 > Android开发

android之M版授权问题

2016-09-09 10:53 28 查看
android M(API23)中对权限的管理更加严格,如果我们用到了相机权限 而未提醒用户去授权,那么会导致App的运行崩溃

   

    因此我们可以通过requestPermissions()方法来提示用户授权

    例如:if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {  //判断当前版本是23以上的版本吗

String[] perms = { "android.permission.CAMERA" };
int permsRequestCode = 200;
requestPermissions(perms, permsRequestCode);  //请求授权

} else {

          //这里已授权的操作
}

 

    重写  onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults)方法 来返回是否授权的结果

  

    例如:

        @Override
public void onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults) {
switch (requestCode) {
   case permsRequestCode:
boolean cameraAccepted = grantResults[0] == PackageManager.PERMISSION_GRANTED;
         if (cameraAccepted) {
   Toast.makeText(MainActivity.this, "授权成功", 0).show();

} else {
Toast.makeText(MainActivity.this, "授权失败", 0).show();

}
break;

}
      }
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  android 授权