最近接到一個私單,需要小程序里面實現指紋驗證。。廢話不多說,,先查小程序api。
好的,在翻閱小程序api中,發現有一個生物認證的api。分別是wx.checkIsSoterEnrolledInDevice , wx.checkIsSupportSoterAuthentication 和 wx.startSoterAuthentication。
先從checkIsSupportSoterAuthentication說起,文檔解釋這是獲取本機支持的 SOTER 生物認證方式。就是獲取你這個手機有什么生物功能。
代碼先行:
wx.checkIsSupportSoterAuthentication({ success(res) { console.log(res) }})
打印的結果是:
根據小程序api可以得知,我的i7支持指紋功能.
第二步,要講解的是checkIsSoterEnrolledInDevice。。這個api的大意是,獲取手機的指紋信息。。這里有個坑,自己造成的坑,特意說明一下。。自己手機沒錄入指紋去解鎖屏幕,所以手機里面沒有我的指紋信息。。。如果你運行這個函數,他得出的結果為0.因為沒指紋。。
wx.checkIsSoterEnrolledInDevice({ checkAuthMode: 'fingerPrint', //這是根據上一步得知,我手機支持指紋。 success(res) { console.log(res) }})
結果如下,可得知用戶已經錄入了指紋。
最后一步,startSoterAuthentication開始驗證指紋是否是機主本人。
wx.startSoterAuthentication({ requestAuthModes: ['fingerPrint'],//啟動指紋認證 challenge: '123456',//這個參數api解釋是因子。。反正沒看懂,亂填的 authContent: '請用指紋解鎖',//提示框內容 success(res) { console.log(res) }})
獲取成功是得出這樣的結果:(如果指紋驗證不通過,是沒有信息打印的)
好了,大概就是這樣。。。
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持VEVB武林網。
新聞熱點
疑難解答