NativeScript / NativeScript/plugins

[@nativescript/biometrics] Issue with verifyBiometric on iOS 18.3.1: Unable to Retrieve Stored Secret When Using pinFallback

未關閉
#616 1 則留言 1 個 reaction 已指派 1 人 在 GitHub 檢視

@NathanWalker 已經在處理了。

開始於 2025年2月28日。

in progress
主要語言
TypeScript
星號
206
分支
123
平均合併
2 天 1 小時
30 天內合併 PR
1

描述

Description

While using iOS 18.3.1, I encountered an issue with the verifyBiometric function where enabling pinFallback prevents retrieval of the stored secret.

Code Example
this._BiometricAuth.verifyBiometric({
    title: 'Authenticate',
    message: 'Verify your identity to access your account.',
    keyName: 'MyKeyName',
    pinFallback: true, // Allow fallback to device passcode
    ios: {
      fetchSecret: true, // Retrieve stored secret upon successful authentication
      customFallback: false, // Do not use custom fallback logic
    },
});
Expected Behavior
  • If Face ID fails, the system should prompt the user to enter their device passcode.
  • After successful authentication (via Face ID or passcode), the stored secret should be retrievable.
Actual Behavior
  • When pinFallback: true, the stored secret is not accessible.
  • This behavior seems to be affected by customFallback: false, even though I intend for it to behave similarly to Face ID authentication.
  • If pinFallback: false, Face ID failures result in an error (SecItemCopyMatching), and the passcode prompt does not appear.
Question

Is there a way to retrieve the stored secret when pinFallback: true and customFallback: false? Am I missing a configuration that allows proper fallback behavior while still being able to fetch the stored secret?

Environment
  • iOS Version: 18.3.1
  • Biometric Authentication Library: @nativescript/biometrics: "1.3.1"
  • Device Model: iPhone 15 Pro, iPhone 16

Any guidance or workarounds would be greatly appreciated!

貢獻指南

開啟貢獻指南

從這裡開始

  1. 先讀完整個 Issue,再讀專案的貢獻指南。
  2. 在 Issue 下留言說明你要接手 —— 這能避免兩個人做同樣的事。
  3. Fork 儲存庫,在一個分支上完成修改。
  4. 送出 Pull Request,並在描述裡引用這個 Issue 編號。

評估

這個 Issue 還沒有評估資料。

把新 issue 寄到你的電子郵件信箱

精選適合新手參與的 GitHub issue 摘要。