Android 6.0 app的权限申请
来源:互联网 发布:淘宝怎么催客人下订单 编辑:程序博客网 时间:2024/05/22 02:12
作者:Henry
在android 6.0版本之后,系统不会在软件安装的时候就赋予该app所有其申请的权限,对于一些危险级别的权限,app需要在运行时一个一个询问用户授予权限。那么问题来了,是不是所有以前发布的app都会出现问题呢?答案是不会,只有那些targetSdkVersion设置为23和23以上的应用才会出现异常。以下以笔者开发的视频app为例来说明:
是不是所有权限都需要去进行特殊处理呢?不是,只有那些危险级别的权限才需要,android开发者官网有相关描述:
http://developer.android.com/training/permissions/requesting.html
http://developer.android.com/guide/topics/security/permissions.html
所以仔细去看看自己的app,对照列表,如果有需要申请其中的一个权限,就需要进行特殊操作。还有一个比较人性的地方就是如果同一组的任何一个权限被授权了,其他权限也自动被授权。例如,一旦WRITE_EXTERNAL_STORAGE被授权了,app也有READ_EXTERNAL_STORAGE权限了。
接着下一步当然就是要修改代码了,因视频程序需要使用到外部存取空间,因此需要申请WRITE_EXTERNAL_STORAGE权限,所以在执行之前我们需要进行特殊处理
inthasWriteContactsPermission =checkSelfPermission(Manifest.permission.WRITE_EXTERNAL_STORAGE);
if(hasWriteContactsPermission !=PackageManager.PERMISSION_GRANTED) {
requestPermissions(newString[]{Manifest.permission.WRITE_EXTERNAL_STORAGE},
CODE_FOR_WRITE_PERMISSION);
return;
写完这段代码之后,就会出现如下系统dialog,如上图所示
紧接着就需要去处理DENY和ALLOW的回调了,重写onRequestPermissionsResult函数:
@Override
publicvoidonRequestPermissionsResult(intrequestCode,String[] permissions, int[] grantResults) {
if(requestCode ==CODE_FOR_WRITE_PERMISSION){
if(permissions[0].equals(Manifest.permission.WRITE_EXTERNAL_STORAGE)
&&grantResults[0]== PackageManager.PERMISSION_GRANTED){
//用户同意使用
}else{
//用户不同意,自行处理即可
finish();
}
}
好了,这样就算是适配完成了。
- Android 6.0 app的权限申请
- android 6.0 +的权限申请
- android 6.0权限申请
- Android 6.0 申请权限
- android 6.0 权限申请
- Android 6.0权限申请
- Android 6.0 权限申请
- Android 6.0 权限申请
- Android 6.0权限申请
- Android 6.0+ 权限申请
- android 6.0权限申请
- Android 6.0权限申请
- Android 6.0权限申请
- Android 6.0动态权限申请的处理
- Android 6.0上的权限申请解析
- Android 6.0 权限的申请 与 封装
- android 6.0以上动态权限的申请
- android应用程序申请的权限
- requires Ruby version >= 2.2.2.
- JASE总结--07(构造器、this、overload、static、静态代码块、package、import、静态引入)
- openssl aes+sha
- 如何使用solidworks对产品打螺孔--问题解决
- linphone-PresenceModel.java文件分析
- Android 6.0 app的权限申请
- 计算机网络socket编程之UDP
- 剑指offer——二叉搜索树与双向链表
- 简单生成二维码的Demo
- Requirejs高级应用(二):消除requirejs的缓存模块
- Gson高级用法--->对json字符串进行过滤和检查
- Maven
- WebView下拉刷新Demo
- 打造S级手游,腾讯WeTest品质把控2016ChinaJoy