用于检测指纹变更库
- 每一个类都单一职责
- 整个程序对修改关闭对扩展开放
- 每个类都只实现其需要的接口
- 可使用子类实例替换而不用大量修改程序
- 高层次模块通过接口依赖底层次模块,不依赖具体实现
在项目bulid.gralde中添加如下依赖
implementation 'io.github.wjf510.fingerprint.change:detector-release:1.0.1-RELEASE'
- 该库支持Android 6.0及之后版本处理指纹变更校验,Android在6.0及之后版本开始支持指纹识别
- 在Android 6版本和Android 10及以后版本实现上有些不同,Android 6 到10版本可用通过反射获取到指纹绑定的id,在Android10之后版本无法获取到,使用创建一个密钥,该密钥在生物识别注册时失效的方式来处理指纹的变更
- 创建
FingerprintChangeDetector
实例
val fingerprintChangeDetector by lazy {
FingerprintChangeDetector.createDetector(
ConsoleLogger(),
SharedPreferencesStorage(baseContext, "fingerprintChange"),
AndroidFingerprintPlatform(baseContext, consoleLogger)
)
}
- 处理业务逻辑后调用保存指纹id
fingerprintChangeDetector.saveEnrollIds()
- 判断指纹是否判断
fingerprintChangeDetector.isChanged()
- 处理完指纹变更逻辑后,删除保存的指纹id
fingerprintChangeDetector.deleteEnrollIds()