Erste Schritte
Copy a setup prompt with the install steps and the full markdown guide for this plugin.
Set up this Capacitor plugin in the project.
Use the package manager already used by the project.
Install these package(s): `@capgo/capacitor-autofill-save-password`
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/de/docs/plugins/autofill-save-password/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.
Installation
Section titled “Installation”npm install @capgo/capacitor-autofill-save-passwordnpx cap syncyarn add @capgo/capacitor-autofill-save-passwordnpx cap syncpnpm add @capgo/capacitor-autofill-save-passwordnpx cap syncbun add @capgo/capacitor-autofill-save-passwordnpx cap syncPlattformunterstützung
Section titled “Plattformunterstützung”- iOS: Vollständige Unterstützung (iOS 18.3 und ältere Versionen)
- Android: In Arbeit
Plattform-Konfiguration
Section titled “Plattform-Konfiguration”1. Associated Domains Einrichtung
Section titled “1. Associated Domains Einrichtung”Konfigurieren Sie Associated Domains in Ihrem Apple Developer Account und fügen Sie sie zu Ihrer App.entitlements Datei hinzu:
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"><plist version="1.0"><dict> <key>com.apple.developer.associated-domains</key> <array> <string>webcredentials:yourdomain.com</string> <string>webcredentials:www.yourdomain.com</string> </array></dict></plist>2. Web-Anmeldedaten-Konfiguration
Section titled “2. Web-Anmeldedaten-Konfiguration”Fügen Sie eine .well-known/apple-app-site-association Datei zu Ihrer Website hinzu:
{ "webcredentials": { "apps": [ "TEAMID.com.yourcompany.yourapp" ] }}Android (Zukünftige Unterstützung)
Section titled “Android (Zukünftige Unterstützung)”1. Google Services Plugin
Section titled “1. Google Services Plugin”Fügen Sie zu android/app/build.gradle hinzu:
apply plugin: 'com.google.gms.google-services'2. Domain-Konfiguration
Section titled “2. Domain-Konfiguration”Fügen Sie zu android/app/src/main/res/values/strings.xml hinzu:
<resources> <string name="asset_statements"> [{ "relation": ["delegate_permission/common.handle_all_urls"], "target": { "namespace": "web", "site": "https://yourdomain.com" } }] </string></resources>Verwendungsbeispiel
Section titled “Verwendungsbeispiel”import { SavePassword } from '@capgo/capacitor-autofill-save-password';
// Passwort nach erfolgreicher Anmeldung speichernasync function login(username: string, password: string) { try { // Führen Sie hier Ihre Anmeldelogik aus const loginSuccess = await performLogin(username, password);
if (loginSuccess) { // Benutzer zum Speichern des Passworts auffordern await SavePassword.promptDialog({ username: username, password: password, url: 'https://yourdomain.com' // nur iOS });
console.log('Passwort erfolgreich gespeichert'); } } catch (error) { console.error('Passwort konnte nicht gespeichert werden:', error); }}
// Gespeichertes Passwort für Autofill lesenasync function loadSavedCredentials() { try { const credentials = await SavePassword.readPassword();
if (credentials.username && credentials.password) { console.log('Gespeicherte Anmeldedaten gefunden'); // Anmeldeformular vorab ausfüllen return { username: credentials.username, password: credentials.password }; } } catch (error) { console.error('Gespeichertes Passwort konnte nicht gelesen werden:', error); }
return null;}API-Referenz
Section titled “API-Referenz”promptDialog(options)
Section titled “promptDialog(options)”promptDialog(options: SavePasswordOptions) => Promise<void>Speichert Benutzeranmeldedaten im System-Keychain.
| Parameter | Typ |
|---|---|
options | SavePasswordOptions |
readPassword()
Section titled “readPassword()”readPassword() => Promise<SavedCredentials>Ruft gespeicherte Anmeldedaten aus dem System-Keychain ab.
Rückgabewert: Promise<SavedCredentials>
Schnittstellen
Section titled “Schnittstellen”SavePasswordOptions
Section titled “SavePasswordOptions”| Eigenschaft | Typ | Beschreibung |
|---|---|---|
username | string | Der zu speichernde Benutzername |
password | string | Das zu speichernde Passwort |
url | string | Nur iOS - zugehörige Domain-URL (optional) |
SavedCredentials
Section titled “SavedCredentials”| Eigenschaft | Typ | Beschreibung |
|---|---|---|
username | string | Der gespeicherte Benutzername |
password | string | Das gespeicherte Passwort |
Integration mit dem Anmeldeablauf
Section titled “Integration mit dem Anmeldeablauf”import { SavePassword } from '@capgo/capacitor-autofill-save-password';
class AuthService { async login(username: string, password: string) { try { // Mit Ihrem Backend authentifizieren const response = await fetch('/api/login', { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify({ username, password }) });
if (response.ok) { // Anmeldedaten zum Speichern anbieten await this.offerToSavePassword(username, password); return true; } } catch (error) { console.error('Anmeldung fehlgeschlagen:', error); } return false; }
private async offerToSavePassword(username: string, password: string) { try { await SavePassword.promptDialog({ username, password, url: 'https://yourdomain.com' }); } catch (error) { // Benutzer hat abgelehnt zu speichern oder Fehler aufgetreten console.log('Passwort nicht gespeichert:', error); } }
async loadSavedCredentials() { try { return await SavePassword.readPassword(); } catch (error) { console.log('Keine gespeicherten Anmeldedaten gefunden'); return null; } }}Bewährte Methoden
Section titled “Bewährte Methoden”- Fordern Sie nur zum Speichern von Passwörtern nach erfolgreicher Authentifizierung auf
- Behandeln Sie Fälle, in denen Benutzer das Speichern von Passwörtern ablehnen, angemessen
- Implementieren Sie ordnungsgemäße Fehlerbehandlung für Keychain-Zugriffsfehler
- Verwenden Sie Associated Domains für nahtloses Web-App-Anmeldedaten-Sharing
- Testen Sie die Autofill-Funktionalität über verschiedene iOS-Versionen hinweg
Sicherheitsüberlegungen
Section titled “Sicherheitsüberlegungen”- Anmeldedaten werden im System-Keychain mit entsprechenden Sicherheitsflags gespeichert
- Associated Domains stellen sicher, dass Anmeldedaten nur für autorisierte Apps zugänglich sind
- Befolgen Sie die Plattform-Sicherheitsrichtlinien für die Anmeldedatenverwaltung
- Erwägen Sie die Implementierung zusätzlicher Sicherheitsmaßnahmen für sensible Anwendungen