Android 6.0及以上权限处理
来源:互联网 发布:linux svn 编辑:程序博客网 时间:2024/05/23 13:13
Android 6.0及以上权限处理
–
为了保证Android系统的完整性以及用户的隐私性,所有的APP都运行在一个单独的沙盒中,如果想要访问沙盒之外的资源必须有明确指定是否有该权限,在Android 6.0之前,只要指明了权限系统一般都会自动授权,也有需要询问用户是否授权。但是在Android 6.0以及后对于危险权限必须用户同意后才能进行。
1.定义应用所需权限
App Manifest
中定义所需权限,只定义所需的,不使用的不要定义。
2.处理运行时权限请求
>
1.权限组概念
>
一个或者多个权限组成一个权限组,例如
READ_CONTACTS
,WRITE_CONTACTS
和GET_ACCOUNTS
同属CONTACTS
权限组,申请其中任一个权限系统都会提示同样的提示,且用户允许其中一个权限则权限组中其他权限自动允许。
2.权限分类
权限分成正常权限和危险权限,如果不会威胁到用户隐私的权限通常会在安装时自动允许,而危险权限即使你再
Mainifest
列出来也会显式要用户处理。下面表中的危险权限在你APPtargetSdkVersion
大于等于23是需要特殊处理。
3. 检测权限和请求权限
>
1. 判断是否有相应权限
int permissionCheck = ContextCompat.checkSelfPermission(thisActivity,Manifest.permission.ACCESS_FINE_LOCATION);
返回的结果permissionCheck
如果是允许则返回PackageManager.PERMISSION_GRANTED
否则 返回PERMISSION_DENIED
,如果是允许了则直接使用。2.请求权限
ActivityCompat.shouldShowRequestPermissionRationale(activity, p);
返回是否需要一个我们自己定义的解释,默认返回false
当用户选择拒绝后返回true,拒绝的同是选择不再询问则返回false
ActivityCompat.requestPermissions(activity, ps, requestCode);
请求相应权限,效果如下:
demo
>
源码
APK
0 0
- Android 6.0及以上权限处理
- Android 6.0以上权限处理
- Android 6.0及以上运行时权限处理完全解析
- Android 6.0 及以上运行时权限处理
- 安卓6.0及以上权限处理
- Android拍照及图片裁剪、调用系统相册(兼容6.0以上权限处理及7.0以上文件管理)
- Android 6.0 7.0及以上 动态权限
- Android的sdk23及以上版本中的权限处理
- 探讨Android 6.0及以上新权限系统的检测与处理
- 探讨Android 6.0及以上新权限系统的检测与处理
- 安卓拍照及图片裁剪(6.0以上权限处理及7.0以上文件管理)
- Android权限处理(6.0以上、6.0以下)
- Android 6.0及以上版本的运行时权限介绍
- Android 6.0及以上版本的运行时权限介绍
- Android 6.0及以上版本的运行时权限介绍
- Android 6.0及以上版本的运行时权限介绍
- Android 6.0及以上版本定位权限开发问题
- Android 6.0以上运行权限及RxPermissions的使用
- hdu1873 看病要排队(队列+优先级)
- HDOJ 1896 Stones【优先队列】
- [Cloud Computing]Mechanisms: Single Sign-On
- 开灯问题
- [2016/7/26][usaco 2.2]Party Lamps
- Android 6.0及以上权限处理
- 现在给你一个16进制的加减法的表达式,要求用8进制输出表达式的结果。
- POJ 1001 高精度乘法
- JQuery移除事件
- 重建二叉树
- http协议详解
- nyoj 88汉诺塔_1
- tar 解压
- 面向对象的方法操作memcache 面向过程编程