Kotlin+LiveData实现动态权限申请

610 阅读1分钟

1.概要

Android目前最火的权限库非RxPermissons莫属了,本文借鉴其思想,使用LiveData撸一个轻量级的动态申请权限开发库,不依赖任何三方框架

2.使用

依赖

//Appcliation的build.gradle
allprojects {
    repositories {
    
        maven {
            url 'https://dl.bintray.com/xqy666/maven/'
        }
    }

}
app的build.gralde
dependencies {
  implementation 'com.core.kpermission:kpermision:1.0.1'


}

很简单,在Activity或Fragment调用

//请求单个权限
 KPermissionHelper.from(this).requestPermission(Manifest.permission.READ_CONTACTS){
        permission, isGranted ->  Log.e("Main","$permission-----$isGranted")
}

//请求多个权限,直接添加即可
 KPermissionHelper.from(this).requestPermission(
    Manifest.permission.READ_CONTACTS,
    Manifest.permission.CAMERA){
        //会按请求的顺序返回结果
        permission, isGranted ->  Log.e("Main","$permission-----$isGranted")
}

3.源码

源码已经上传到github上了 Kotlin-Permission