Android6.0权限设置
来源:互联网 发布:javascript alert 编辑:程序博客网 时间:2024/04/30 05:38
今天写关于图片读写的代码时,发现在华为MT7这个手机上读写文件失败,刚开始以为自己的权限写错了,后来的经过多方查找,发现并不是代码的问题,而是Android6.0在权限处理上做了改动。在6.0之前的版本,需要什么样的权限只需要在Manifest文件中添加相应的权限即可,6.0及其以后的版本需要动态申请权限。
直接上代码:
//动态请求读写权限 private void setPermissions() { //版本大于6.0的情况 if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M/*23*/) { int REQUEST_CODE_CONTACT = 101;//请求码 String[] permissions = { Manifest.permission.READ_EXTERNAL_STORAGE, Manifest.permission.WRITE_EXTERNAL_STORAGE}; //验证是否许可权限 for (String str : permissions) { if (this.checkSelfPermission(str) != PackageManager.PERMISSION_GRANTED) {//如果没有允许,则申请权限 //申请权限 this.requestPermissions(permissions, REQUEST_CODE_CONTACT); return; } } } } //回调函数 @Override public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) { if (requestCode == 101) { Log.i("aaa", "---请求权限成功=="); } else { Log.i("aaa", "---请求权限失败=="); } super.onRequestPermissionsResult(requestCode, permissions, grantResults); }
同时还要在Manifest中添加相应的权限处理:
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/> <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/> <uses-permission android:name="android.permission.MOUNT_FORMAT_FILESYSTEMS"/>
0 0
- Android6.0权限设置
- Android6.0仿微信权限设置
- Android6.0 动态权限设置
- android6.0动态权限的设置
- Android6.0 如何添加更改系统设置权限
- android6.0下webview的定位权限设置
- Android6.0动态权限设置 第三方开源库permissiongen使用封装
- Android6.0权限开发
- Android6.0权限管理
- Android6.0动态权限
- Android6.0权限申请
- android6.0 权限管理
- Android6.0系统权限
- android6.0权限管理
- Android6.0权限管理
- Android6.0动态权限
- Android6.0权限操作
- Android6.0权限组
- 批处理学习
- Socket编程 JAVA 单工
- jsonp跨域
- nginx默认nginx.conf
- 【数据库】使用悲观锁实现线程同步,实现秒杀效果
- Android6.0权限设置
- H264 AAC/PCM 到MP4容器
- Java开源项目发布到maven中央仓库
- 关于LINUX权限-bash: ./startup.sh:
- Unity3D优化之缓存
- 类中的访问顺序
- 局域网PC 访问服务器SOCKET
- Jmete-JDBC Request与BeanShell PostProcessor的结合使用
- Eclipse中Maven常用命令以及Maven生命周期详解