使用EasyPermissions 来打造简单的android6.0动态权限
来源:互联网 发布:mac队员被杀 编辑:程序博客网 时间:2024/05/17 23:34
EasyPermissions 的介绍
EasyPermissions是一个三方库,用于android6.0动态权限的使用。
在android6.0版本中,涉及到权限问题的使用,都需要进行动态申请。
EasyPermissions 的使用
在build.gradle中
dependencies { compile 'pub.devrel:easypermissions:0.4.0'}
开发过程中,遇到需要使用动态权限时,添加如下代码
if (EasyPermissions.hasPermissions(this, "android.permission.XXXX")) { //具备权限 直接进行操作 } else { //权限拒绝 申请权限 EasyPermissions.requestPermissions(this, "", PERMISSION_CAMERA, "android.permission.XXXX"); }
然后在activity或fragment中 覆盖onRequestPermissionsResult方法
@Overridepublic void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) { super.onRequestPermissionsResult(requestCode, permissions, grantResults); // 将结果转发到EasyPermissions EasyPermissions.onRequestPermissionsResult(requestCode, permissions, grantResults, this); }
最后用activity或fragment实现 EasyPermissions.PermissionCallbacks接口 复写它的两个回调方法
@Override public void onPermissionsGranted(int requestCode, List<String> perms) {//某些权限已被授予 } @Override public void onPermissionsDenied(int requestCode, List<String> perms) { //某些权限已被拒绝 if (requestCode == PERMISSION_CAMERA) { //显示dialog来提示用户去设置 new AppSettingsDialog.Builder(this).setRationale("1231414").setTitle("标题").build().show(); } }
啦啦啦。。这样我们就完成了用EasyPermissions 来实现android6.0的动态权限的申请。
EasyPermissions 的下载
下面放githup的项目,很简单,大家可以下载使用。
https://github.com/googlesamples/easypermissions
阅读全文
2 0
- 使用EasyPermissions 来打造简单的android6.0动态权限
- Android6.0------权限申请~easypermissions
- Android6.0的动态权限的简单使用
- Android 6.0动态权限框架EasyPermissions的使用
- android6.0动态权限的使用
- Android动态权限,EasyPermissions 介绍及使用
- Android6.0权限的使用
- Android6.0动态权限
- Android6.0动态权限
- Android6.0动态权限
- Android6.0动态权限
- android6.0动态权限
- Android6.0 动态权限
- android6.0动态权限
- Android6.0动态权限
- Android6.0动态权限
- Android6.0动态权限
- Android6.0动态权限
- ubuntu下安装teamviewer
- CentOS7通过yum安装Mysql5.7+修改默认密码+远程登录
- 237. Delete Node in a Linked List的C++解法
- Scsi-target-utils Quickstart Guide
- Spring源码解析-PropertyEditor
- 使用EasyPermissions 来打造简单的android6.0动态权限
- Linq 和 Lambda 查询中按照多个值进行分组GroupBy
- vue.js浅度监听和深度监听
- 新浪微博OAuth认证和存储
- Android Studio显示行数
- Spring中property资源文件动态映射xml载入方法
- 第八章 VMware Workstation中Linux克隆步骤
- sonarqube安装使用
- 腾讯创业服务平台