使用EasyPermissions 来打造简单的android6.0动态权限

xiaoxiao2021-02-28  98

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方法

@Override public 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

转载请注明原文地址: https://www.6miu.com/read-37038.html

最新回复(0)