Skip to content

yinzhengwei/permissiongranted

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

37 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

permissionGranted

Android动态权限检测和申请管理

配置方式

Step 1. Add the JitPack repository to your build file

Add it in your root build.gradle at the end of repositories:

allprojects {
	repositories {
		...
		maven { url 'https://jitpack.io' }
	}
}

Step 2. Add the dependency

dependencies {

	implementation 'com.github.yinzhengwei:permissiongranted:19.2.0'
}

代码使用方式

关于Android6.0以上系统需要动态申请和检测权限,此demo做了一次封装, 使用方式简洁明了,只需要一行代码( 参数一表示上下文、 参数二表示要开启 的权限集合、 第三个参数表示要申请的权限名称(如:相机),当权限遭到用户拒绝时,弹窗 中的提示语里使用,默认不传表示不具体说明哪个权限、 参数四是操作结果的回调):

方式一:

PermissionUtils.permissionCheck(this, permission_CAMERA, "xxx", null)

方式二:

PermissionUtils.permissionCheck(this, permission_CAMERA, "xxx", object : PermissionGrantedCallback {
    override fun granted() {
        Log.d("permissionCheck", "同意")
    }
    override fun denied() {
        Log.d("permissionCheck", "拒绝")
    }
})

方式三(这里的第四个参数表示是否自动显示提示框):

PermissionUtils.permissionCheck(this, permission_CAMERA, "xxx", false, object : PermissionGrantedCallback {
    override fun granted() {
        Log.d("permissionCheck", "同意")
    }
    override fun denied() {
        Log.d("permissionCheck", "拒绝")
    }
})

补充说明

同步完成了权限检测、大部分机型的适配、系统权限管理、管理提示弹窗等工作。 需要开发者注意的是程序里做了几组权限的列举(详见PermissionList类), 可自行添加和补充。

不管我们代码里动态监测什么权限,AndroidManifest.xml里都需要配置上, 不仅为了适配6.0以下机型静态权限的使用,也是为了动态申请和检测权限时系 统权限管理界面能显示出需要申请的权限列表。

About

Android动态权限检测和申请管理

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages