Einstieg
Kopieren Sie eine Einrichtungsanweisung mit den Installationsanweisungen und der vollständigen Markdown-Guideline für diesen Plugin.
Set up this Capacitor plugin in the project.
Use the package manager already used by the project.
Install these package(s): `@capgo/capacitor-native-biometric`
Run the required Capacitor sync/update step after installation.
Read this markdown guide for the full setup steps: https://raw.githubusercontent.com/Cap-go/website/refs/heads/main/apps/docs/src/content/docs/docs/plugins/native-biometric/getting-started.mdx
Use that guide for platform-specific steps, native file edits, permissions, config changes, imports, and usage setup.
If that guide references other docs pages, read them too.
Install
Install-Anleitungbun add @capgo/capacitor-native-biometricbunx cap syncImport
Import-Anleitungimport { NativeBiometric } from '@capgo/capacitor-native-biometric';API Übersicht
API ÜbersichtisAvailable
__CAPGO_KEEP_1__-ÜberprüfungÜberprüft, ob biometrische Authentifizierungs-Hardware verfügbar ist.
import { NativeBiometric } from '@capgo/capacitor-native-biometric';
await NativeBiometric.isAvailable();verifyIdentity
Abschnitt mit dem Titel “verifyIdentity”Der Benutzer wird aufgefordert, sich mit biometrischen Daten anzumelden.
import { NativeBiometric } from '@capgo/capacitor-native-biometric';
await NativeBiometric.verifyIdentity();getCredentials
Abschnitt mit dem Titel “getCredentials”Die gespeicherten Anmelddaten für einen bestimmten Server werden abgerufen.
import { NativeBiometric } from '@capgo/capacitor-native-biometric';
await NativeBiometric.getCredentials({} as GetCredentialOptions);setCredentials
Abschnitt mit dem Titel “setCredentials”Die übergebenen Anmelddaten werden für einen bestimmten Server gespeichert.
import { NativeBiometric } from '@capgo/capacitor-native-biometric';
await NativeBiometric.setCredentials({} as SetCredentialOptions);deleteCredentials
Abschnitt mit dem Titel “deleteCredentials”Die gespeicherten Anmelddaten für einen bestimmten Server werden gelöscht.
import { NativeBiometric } from '@capgo/capacitor-native-biometric';
await NativeBiometric.deleteCredentials({} as DeleteCredentialOptions);getSecureCredentials
Abschnitt mit dem Titel “getSecureCredentials”Ermittelt die gespeicherten Anmeldeinformationen für einen bestimmten Server, wobei eine biometrische Authentifizierung erforderlich ist. Die Anmeldeinformationen müssen mit Zugriffssteuerung gespeichert worden sein, wobei die Zugriffssteuerung auf BIOMETRY_CURRENT_SET oder BIOMETRY_ANY festgelegt wurde.
Bei iOS zeigt das System automatisch den biometrischen Prompt an, wenn ein geschütztes Keychain-Element abgerufen wird. Bei Android wird der BiometricPrompt mit einem CryptoObject angezeigt, das an die Schlüsseldekryptierung gebunden ist.
import { NativeBiometric } from '@capgo/capacitor-native-biometric';
await NativeBiometric.getSecureCredentials({} as GetSecureCredentialsOptions);isCredentialsSaved
Abschnitt mit dem Titel “isCredentialsSaved”Überprüft, ob Anmeldeinformationen bereits für einen bestimmten Server gespeichert sind.
import { NativeBiometric } from '@capgo/capacitor-native-biometric';
await NativeBiometric.isCredentialsSaved({} as IsCredentialsSavedOptions);Typenreferenz
Abschnitt mit dem Titel “Typenreferenz”IsAvailableOptions
Abschnitt mit dem Titel “IsAvailableOptions”export interface IsAvailableOptions { /** * Only for iOS. * Specifies if should fallback to passcode authentication if biometric authentication is not available. * On Android, this parameter is ignored due to BiometricPrompt API constraints: * DEVICE_CREDENTIAL authenticator and negative button (cancel) are mutually exclusive. */ useFallback: boolean;}AvailableResult
Abschnitt mit dem Titel “AvailableResult”Ergibtis aus der Methode isAvailable(), die die Verfügbarkeit der biometrischen Authentifizierung anzeigt.
export interface AvailableResult { /** * Whether authentication is available (biometric or fallback if useFallback is true) */ isAvailable: boolean; /** * The strength of available authentication method (STRONG, WEAK, or NONE) */ authenticationStrength: AuthenticationStrength; /** * The primary biometry type available on the device. * On Android devices with multiple biometry types, this returns MULTIPLE. * Use this for display purposes only - always use isAvailable for logic decisions. */ biometryType: BiometryType; /** * Whether the device has a secure lock screen (PIN, pattern, or password). * This is independent of biometric enrollment. */ deviceIsSecure: boolean; /** * Whether strong biometry (Face ID, Touch ID, or fingerprint on devices that consider it strong) * is specifically available, separate from weak biometry or device credentials. */ strongBiometryIsAvailable: boolean; /** * Error code from BiometricAuthError enum. Only present when isAvailable is false. * Indicates why biometric authentication is not available. * @see BiometricAuthError */ errorCode?: BiometricAuthError;}BiometryChangeListener
Abschnitt mit dem Titel “BiometryChangeListener”Aufruftyp für den Listener für Änderungen der Biometrie
export type BiometryChangeListener = (result: AvailableResult) => void;BiometricOptions
Abschnitt mit dem Titel “BiometricOptions”export interface BiometricOptions { reason?: string; title?: string; subtitle?: string; description?: string; negativeButtonText?: string; /** * Only for iOS. * Specifies if should fallback to passcode authentication if biometric authentication fails. * On Android, this parameter is ignored due to BiometricPrompt API constraints: * DEVICE_CREDENTIAL authenticator and negative button (cancel) are mutually exclusive. */ useFallback?: boolean; /** * Only for iOS. * Set the text for the fallback button in the authentication dialog. * If this property is not specified, the default text is set by the system. */ fallbackTitle?: string; /** * Only for Android. * Set a maximum number of attempts for biometric authentication. The maximum allowed by android is 5. * @default 1 */ maxAttempts?: number; /** * Only for Android. * Specify which biometry types are allowed for authentication. * If not specified, all available types will be allowed. * @example [BiometryType.FINGERPRINT, BiometryType.FACE_AUTHENTICATION] */ allowedBiometryTypes?: BiometryType[];}GetCredentialOptions
Abschnitt mit dem Titel “GetCredentialOptions”export interface GetCredentialOptions { server: string;}Credentials
Abschnitt mit dem Titel “Credentials”export interface Credentials { username: string; password: string;}SetCredentialOptions
Abschnitt mit dem Titel “SetCredentialOptions”export interface SetCredentialOptions { username: string; password: string; server: string; /** * Access control level for the stored credentials. * When set to BIOMETRY_CURRENT_SET or BIOMETRY_ANY, the credentials are * hardware-protected and require biometric authentication to access. * * On iOS, this adds SecAccessControl to the Keychain item. * On Android, this creates a biometric-protected Keystore key and requires * BiometricPrompt authentication for both storing and retrieving credentials. * * @default AccessControl.NONE * @since 8.4.0 */ accessControl?: AccessControl;}DeleteCredentialOptions
Abschnitt mit dem Titel „Löschmöglichkeiten für Anmeldeinformationen“export interface DeleteCredentialOptions { server: string;}GetSecureCredentialsOptions
Abschnitt mit dem Titel „Optionen zum Abrufen von sicheren Anmeldeinformationen“export interface GetSecureCredentialsOptions { server: string; /** * Reason for requesting biometric authentication. * Displayed in the biometric prompt on both iOS and Android. */ reason?: string; /** * Title for the biometric prompt. * Only for Android. */ title?: string; /** * Subtitle for the biometric prompt. * Only for Android. */ subtitle?: string; /** * Description for the biometric prompt. * Only for Android. */ description?: string; /** * Text for the negative/cancel button. * Only for Android. */ negativeButtonText?: string;}IsCredentialsSavedOptions
Abschnitt mit dem Titel „Optionen zur Überprüfung, ob Anmeldeinformationen gespeichert sind“export interface IsCredentialsSavedOptions { server: string;}IsCredentialsSavedResult
Abschnitt mit dem Titel „Ergbnis zur Überprüfung, ob Anmeldeinformationen gespeichert sind“export interface IsCredentialsSavedResult { isSaved: boolean;}AuthenticationStrength
Abschnitt mit dem Titel „Authentifizierungsstärke“export enum AuthenticationStrength { /** * No authentication available, even if PIN is available but useFallback = false */ NONE = 0, /** * Strong authentication: Face ID on iOS, fingerprints on devices that consider fingerprints strong (Android). * Note: PIN/pattern/password is NEVER considered STRONG, even when useFallback = true. */ STRONG = 1, /** * Weak authentication: Face authentication on Android devices that consider face weak, * or PIN/pattern/password if useFallback = true (PIN is always WEAK, never STRONG). */ WEAK = 2,}Quelle der Wahrheit
Abschnitt mit dem Titel “Quelle der Wahrheit”Diese Seite wurde aus dem Plugin generiert. src/definitions.tsRe-run die Synchronisierung, wenn die öffentliche API upstream geändert wird.