Android6.0获取动态权限代码示例
- 作者: 醉着的马儿不由缰
- 来源: 51数据库
- 2021-08-16
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中Bitmap用法(显示,保存,缩放,旋转)实例分析
12
android 仿微信聊天气泡效果实现思路
1
Android的尺度,drawable-xxxxxxx
2
Codeforces Round #656 (Div. 3) (C、D题)
1
Android之handler异步消息处理机制解析
6
GridView中图片显示出现上下间距过大,左右图片显示类似瀑布流的问题
0
AsyncTask的简单使用
5
两个简单Fragment之间的通信(三种方式)
18
uboot修改设置boot参数命令
41
android中实现从相册中一次性获取多张图片与拍照,并将选中的图片显示出来
2
