欢迎来到代码驿站!

Android代码

当前位置:首页 > 移动开发 > Android代码

Android6.0获取动态权限代码示例

时间:2021-07-09 08:27:13|栏目:Android代码|点击:

Android系统对所有的危险权限进行了分组,称为 权限组 。属于同一组的危险权限将自动合并授予,用户授予应用某个权限组的权限,则应用将获得该权限组下的所有权限(前提是相关权限在 AndroidManifest.xml 中有声明)。

危险权限 和 权限组 列表如下: 在 AndroidManifest.xml 声明过的危险权限对应的权限组可以在系统 “设置” -> “应用” -> “应用信息” -> “权限” 中查看,可以手动授权和取消授权。

1、设备系统是 Android 6.0 (API 23) 或更高版本,并且应用的 targetSdkVersion 是 23 或更高版本,则针对在 AndroidManifest.xml 中声明的危险权限,在运行时还需要动态请求用户授权。

2、动态权限请求相关操作的API封装在在android.support.v4包中,发起请求权限的Activity需要直接或间接继承android.support.v4.app.FragmentActivity。

3、 也可以在直接或间接继承 android.support.v4.app.Fragment 的 Fragment 中发起权限请求。

首先在清单文件中注册

然后在MainActivity.java中将权限封装到一个String数组中

static final String[] PERMISSION = new String[]{
      Manifest.permission.READ_PHONE_STATE,
      Manifest.permission.WRITE_EXTERNAL_STORAGE,
      Manifest.permission.RECORD_AUDIO,
      Manifest.permission.RECEIVE_BOOT_COMPLETED
  };

然后在onCreate()方法中加入一下代码:

if (ContextCompat.checkSelfPermission(this, Manifest.permission.READ_CONTACTS) != PackageManager.PERMISSION_GRANTED) {
      //Android 6.0申请权限
      ActivityCompat.requestPermissions(this, PERMISSION, 1);
    } else {
      Toast.makeText(this, "成功", Toast.LENGTH_SHORT).show();
    }

我通常将上述代码写在另一个方法中,然后在onCreate()方法中调用。

上一篇:Android实现分享微信好友及出现闪退的解决办法

栏    目:Android代码

下一篇:Android原生实现多线程断点下载实例代码

本文标题:Android6.0获取动态权限代码示例

本文地址:http://www.codeinn.net/misctech/154791.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有