BiometricHelper-指纹识别,面部识别,自定义弹窗,用法超级简单
基于安卓原生指纹识别和面部识别的工具类,可按需求自定义弹窗
项目演示
特点功能:
- 支持系统弹窗
- 支持采用SDK弹窗
- 支持采用自定义弹窗
如何添加
Gradle添加:
1.在Project的build.gradle
中添加仓库地址
allprojects {
repositories {
...
maven { url "https://jitpack.io" }
}
}
复制代码
2.在Module目录下的build.gradle
中添加依赖
dependencies {
implementation 'com.github.ITxiaoguang:BiometricHelper:xxx'
}
复制代码
使用方法:
需要指纹权限
<uses-permission android:name="android.permission.USE_FINGERPRINT" />
复制代码
主要调用代码
private fun showDialog(enableAndroidP: Boolean) {
BiometricPromptManager.Builder(this)
.enableAndroidP(enableAndroidP)
.setCallback(fingerprintCallback)
.title("请验证已录入的指纹/面容")
.cancelText("取消")
.setImgRes(R.drawable.ic_fingerprint)
.failTitle("未能识别指纹")
.failContent("再试一次")
.build()
}
private val fingerprintCallback: FingerprintCallback = object : FingerprintCallback {
@RequiresApi(api = Build.VERSION_CODES.M)
override fun onSucceeded23(result: FingerprintManagerCompat.AuthenticationResult?) {
Toast.makeText(this@MainActivity, "success", Toast.LENGTH_SHORT).show()
}
@RequiresApi(api = Build.VERSION_CODES.P)
override fun onSucceeded28(result: androidx.biometric.BiometricPrompt.AuthenticationResult?) {
Toast.makeText(this@MainActivity, "success", Toast.LENGTH_SHORT).show()
}
override fun onFailed() {
Toast.makeText(this@MainActivity, "onFailed", Toast.LENGTH_SHORT).show()
}
override fun onError(errString: CharSequence?) {
Toast.makeText(this@MainActivity, "onError " + errString, Toast.LENGTH_SHORT).show()
}
override fun onCancel() {
Toast.makeText(this@MainActivity, "onCancel", Toast.LENGTH_SHORT).show()
}
}
override fun onPause() {
super.onPause()
if (null != manager) {
manager!!.onActivityPause()
}
}
override fun onDestroy() {
super.onDestroy()
if (null != manager) {
manager!!.onActivityDestroy()
}
}
复制代码