指纹解锁过程
在分析指纹解锁之前我们需要分析SystemUI如何实现指纹监听的
之前我们分析过灭屏下构造锁屏的过程的时候我们会调用
onFinishGoingtoSleep()
最终我们会调用至
handleFinishedGoingToSleep
在这个方法中我们会调用updateFingerprintListeningState()
更新注册监听的状态,并且对mFingerprintAlerdyAuthenticated赋值为false
在该方法中,我们会注意有一个判断是进行指纹回调监听的函数: ()
从上面的判断可知,
1 :我们需要对指纹满足监听的条件是必现是锁屏可见等判断成立
2:我们需要判断当前指纹是否处于FINGERPRINT_STATE_RUNNING状态
private int mFingerprintRunningState = FINGERPRINT_STATE_STOPPED;
首次进入的时候mFingerprintRunningState的赋值是FINGERPRINT_STATE_STOPPED
所以我们满足第二个条件
走的函数时