Android 6.0+运行时动态权限申请

Android 6.0+运行时动态权限申请

   这篇笔记记录了EasyPermission 和 PermissionsUtil两个比较好的动态权限申请框架,相信大家在进行Android6.0以后的权限申请时对他的复杂步骤十分痛恨,这两款框架将会大大简化动态权限申请

EasyPermission

   EasyPermission简介

使用步骤:

	1.添加依赖
dependencies {
    // For developers using AndroidX in their applications
    implementation 'pub.devrel:easypermissions:3.0.0'
 
    // For developers using the Android Support Library
    implementation 'pub.devrel:easypermissions:2.0.1'
}
	2.重写Activity或Fragment的onRequestPermissionsResult 方法
public class MainActivity extends AppCompatActivity {
   @Override
   protected void onCreate(Bundle savedInstanceState) {
       super.onCreate(savedInstanceState);
       setContentView(R.layout.activity_main);
   }

   @Override
   public void onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults) {
       super.onRequestPermissionsResult(requestCode, permissions, grantResults);

       //  转发到EasyRequestPermission进行申请
       EasyPermissions.onRequestPermissionsResult(requestCode, permissions, grantResults, this);
   }
}

常用方法介绍

/**
*	第一个参数:上下文,		第二个参数:提示信息,
*	第三个参数:权限请求码,	第四个参数:待请求权限列表
*/
requestPermissions(Activity host, String rationale,int requestCode,String... perms)

实现EasyPermissions.PermissionCallbacks接口中的两个方法

/**
*	第一个参数:权限请求码,	第二个参数:同意的的请求权限列表
*/
onPermissionsGranted(int requestCode, List<String> perms)
/**
*	第一个参数:权限请求码,	第二个参数:拒绝的请求权限列表
*/
onPermissionsDenied(int requestCode, List<String> perms)

PermissionsUtil

   PermissionsUtil简介

使用步骤:

	1.添加依赖
 implementation 'com.github.dfqin:grantor:2.1.0'

常用方法介绍

点开看Api就行了

使用案例

String[] perms = new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE,Manifest.permission.CAMERA};
        PermissionsUtil.requestPermission(this, new PermissionListener() {
           @Override
           public void permissionGranted(@NonNull String[] permission) {
               //授权后操作
           }

           @Override
           public void permissionDenied(@NonNull String[] permission) {
 				//用户拒绝授权后操作
           }
       },perms);
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值