Provider-Einrichtung
Option A: Provider + Hook (Empfohlen)
Umschließen Sie Ihren App-Stamm mit GuardianProvider. Dies initialisiert das SDK und macht es über den useGuardian-Hook für alle untergeordneten Komponenten zugänglich.
App.tsx
import { GuardianProvider } from '@surtai/guardian-rn';
export default function App() {
return (
<GuardianProvider
apiKey="YOUR_API_KEY"
environment="production"
collectLocation={true}
>
<Navigation />
</GuardianProvider>
);
}
Provider-Props
| Prop | Typ | Standard | Beschreibung |
|---|---|---|---|
apiKey | string | erforderlich | Ihr Surt-API-Schlüssel (API key) |
environment | 'production' | 'sandbox' | 'production' | Backend-Umgebung |
logLevel | 'debug' | 'info' | 'warn' | 'error' | 'none' | 'warn' | SDK-Protokolldetailliertheit |
collectLocation | boolean | false | GPS-Erfassung aktivieren (erfordert Berechtigungen) |
collectWifiInfo | boolean | false | WLAN-Netzwerkdetails aktivieren |
collectSimCardInfo | boolean | false | SIM-/Anbieterinfo aktivieren (nur Android) |
collectCameraInfo | boolean | false | Kamerainformationen aktivieren |
Option B: Imperative API
Wenn Sie keinen React-Kontext verwenden möchten, rufen Sie initialize() direkt beim App-Start auf:
index.ts
import { GuardianSDK } from '@surtai/guardian-rn';
GuardianSDK.initialize('API keyxxx', {
environment: 'production',
logLevel: 'warn',
collectLocation: true,
});
useGuardian-Hook
const {
isInitialized, // boolean - true nachdem das SDK bereit ist
verify, // (type, name?, options?) => Promise<VerificationResult>
setCustomer, // (id, name?, email?) => void
clearCustomer, // () => void
} = useGuardian();
warnung
useGuardian() muss innerhalb eines <GuardianProvider> aufgerufen werden. Ein Aufruf außerhalb löst einen Fehler aus.
Fehlerbehebung
| Fehler | Ursache | Lösung |
|---|---|---|
not_initialized | verify() wurde aufgerufen, bevor das SDK bereit war | GuardianProvider verwenden oder initialize() beim Start aufrufen |
useGuardian-Hook-Fehler | Hook außerhalb des Providers verwendet | Komponentenbaum mit <GuardianProvider> umschließen |
invalid_api_key | Falscher oder abgelaufener API-Schlüssel | API key-Schlüssel bei Surt verifizieren |