From 79583aad7f6df377589d7e86c1749afb36b17252 Mon Sep 17 00:00:00 2001 From: DCloud_LXH <283700113@qq.com> Date: Fri, 18 Nov 2022 11:35:23 +0800 Subject: [PATCH] =?UTF-8?q?fix(app):=20=E6=8C=87=E7=BA=B9=E8=AF=86?= =?UTF-8?q?=E5=88=AB=E5=A4=B1=E8=B4=A5=E5=90=8E=E6=8F=90=E7=A4=BA=20questi?= =?UTF-8?q?on/157353?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/api/device/soter-authentication.js | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/src/platforms/app-plus/service/api/device/soter-authentication.js b/src/platforms/app-plus/service/api/device/soter-authentication.js index d8ea1e95a1..38ba10f87b 100644 --- a/src/platforms/app-plus/service/api/device/soter-authentication.js +++ b/src/platforms/app-plus/service/api/device/soter-authentication.js @@ -130,8 +130,14 @@ export function startSoterAuthentication ({ } const realAuthMode = enrolledRequestAuthMode[0] if (realAuthMode === 'fingerPrint') { + let waiting = null + let waitingTimer + const waitingTitle = + authContent || t('uni.startSoterAuthentication.authContent') if (plus.os.name.toLowerCase() === 'android') { - plus.nativeUI.showWaiting(authContent || t('uni.startSoterAuthentication.authContent')).onclose = function () { + waiting = plus.nativeUI.showWaiting(waitingTitle) + + waiting.onclose = function () { plus.fingerprint.cancel() } } @@ -145,6 +151,13 @@ export function startSoterAuthentication ({ }, (e) => { switch (e.code) { case e.AUTHENTICATE_MISMATCH: + if (waiting) { + clearTimeout(waitingTimer) + waiting.setTitle('无法识别') + waitingTimer = setTimeout(() => { + waiting && waiting.setTitle(waitingTitle) + }, 1000) + } // 微信小程序没有这个回调,如果要实现此处回调需要多次触发需要用事件publish实现 // invoke(callbackId, { // authMode: realAuthMode, -- GitLab