An Android permission library developed by Kotlin language with higher extensibility and compatibility.
An Android permission library developed by Kotlin language with higher extensibility and compatibility.
Kotlin语言开发的具有高可扩展性和可控性的Android权限库。
您可能对HaloPermission有诸多疑问:已经有那么多成熟的权限处理框架,为什么要用这个?这个有什么值得使用的理由?为什么这个库的星星这么少?这库到底靠谱不靠谱?... 希望HaloPermission解惑能够消除您心中的疑虑。
在使用HaloPermission的Module的build.gradle中添加以下依赖:
dependencies {
//gradle 3.+以后不是使用'compile'方法,而是使用'implementation' or 'api'等方式
compile('halo.android:permission:1.0.5-rc@aar'){
//传递依赖
transitive = true
}
}
额外配置说明:
V7依赖说明
HaloPermission依赖com.android.support:appcompat-v7:28.0.0
包(本身也依赖v4包,但v7依赖v4,所以引入v7即可),如果与您工程依赖的版本不一致,你可以排除HaloPermission的版本依赖。
但是appcompat-v7
的版本不能低于24.1.+
compile('halo.android:permission:1.0.5-rc@aar'){
//传递依赖
transitive = true
//排除appcompat-v7依赖
exclude group: 'com.android.support', module: 'appcompat-v7'
}
Kotlin依赖说明(项目不支持Kotlin开发的童鞋可以忽略)
HaloPermission是基于org.jetbrains.kotlin:kotlin-stdlib:1.3.11
开发的,如果您的工程也支持Kotlin开发,并且与HaloPermission版本不一致,您可以排除HaloPermission对kotlin-stdlib
的依赖。
但是kotlin-stdlib
的版本最好不能低于1.3.11
compile('halo.android:permission:1.0.5-rc@aar'){
//传递依赖
transitive = true
//排除kotlin-stdlib依赖
exclude group: 'org.jetbrains.kotlin', module: 'kotlin-stdlib'
}
直接下载demo运行吧。。。 Demo下载地址
对于6.0以下的权限处理,某些权限校验可能并不准确,这一部分稍后进一步说明原因。 不仅HaloPermission如此,大多数有名的框架也不能解决这些问题。但是这并不影响app的正常逻辑流程,因为在后续流程中你能够得到更具体的一些信息。
QQ:862638161
Email:[email protected]
如需交流,欢迎讨论