废话前言
之前我记录的一个版本,比较老了,大神又做了更新,故又写一篇供自己记录学习。
大神github了解一下
最新版特点:
- 结构更加清晰;
- 8.0兼容
- 权限分组
一、导包
implementation 'com.yanzhenjie.permission:support:2.0.0'
二、使用
1.运行时申请权限
AndPermission.with(this)
.runtime()
.permission(Permission.Group.STORAGE)
.onGranted(permissions -> {
// 此例子为被允许使用内容执行功能
})
.onDenied(permissions -> {
// 内存使用被拒绝
})
.start();
1.这里使用了lambda表达式(->)。是jdk1.8支持的,jdk1.8提倡使用lambda表达式替代匿名函数。Android Studio需要作出相应调整:
file->project structrue,选择app,把Source Compatibility和Target Compatibility都改为1.8。
二、申请安装未知来源APP
File apkFile = ...;
AndPermission.with(this)
.install()
.file(apkFile)
.onGranted(file -> {
// 被允许安装app执行
})
.onDenied(file -> {
// 被拒绝安装app执行,一般为提示,或再申请
})
.start();
1.这里没有申请什么权限,而是直接跳转到android开关页面。
结尾
我这里只用到这两个功能,这也是使用最多的吧,以后用到再补充吧。