Die Onfido Smart Capture SDKs bieten eine Reihe von Bildschirmen und Funktionen, die es Anwendungen ermöglichen, Abläufe zur Überprüfung der Benutzeridentität zu implementieren. Jedes SDK enthält:
Alle Onfido Smart Capture SDKs werden mithilfe von Onfido Studio-Workflows orchestriert, wobei zwischen den verfügbaren Plattformen nur geringfügige Anpassungsunterschiede bestehen.
Es gibt zwei Umgebungen zur Unterstützung der Onfido SDK-Integrationen:
Die verwendete Umgebung wird durch das API-Token bestimmt, das zum Generieren des erforderlichen SDK-Tokens verwendet wird.
Sobald Sie mit Ihrer Integration zufrieden sind und bereit sind, live zu gehen, wenden Sie sich bitte an den Kundensupport von Onfido, um ein Live-API-Token zu erhalten. Sie müssen das Sandbox-Token in Ihrem Code durch das Live-Token ersetzen.
Überprüfen Sie, ob Sie in Ihrem Onfido-Dashboard die korrekten Rechnungsdaten eingegeben haben, bevor Sie live gehen.
Das iOS SDK unterstützt:
Hinweis : Die neueste SDK-Version zur Unterstützung von Xcode 11.5-12 ist iOS SDK Version 22, Xcode 14+ ist iOS SDK Version 29. Für ältere Versionen von Xcode gibt es bei Bedarf eine Problemumgehung. Für weitere Informationen wenden Sie sich bitte an das Kundensupport-Team von Onfido.
Hinweis : Für die Ausführung des iOS SDK ist CoreNFC erforderlich (unabhängig davon, ob Sie NFC verwenden oder nicht). Seit Xcode 12 gibt es einen Fehler, bei dem libnfshared.dylib
in Simulatoren fehlt. Eine Lösung für dieses Problem finden Sie unter Stack Overflow.
Hinweis : Falls Sie die NFC-Funktion deaktivieren, fordert Apple Sie möglicherweise auf, ein Video bereitzustellen, um die NFC-Nutzung zu demonstrieren, da NFC-bezogener Code Teil der SDK-Binärdatei ist, unabhängig von der Laufzeitkonfiguration. Während wir an einer dauerhaften Lösung für dieses Problem arbeiten, können Sie sich in der Zwischenzeit an den Kundensupport von Onfido wenden, um ein Video anzufordern.
Das SDK nutzt die Gerätekamera eines Benutzers (zur Dokument- und Gesichtserfassung) und das Mikrofon (zur Video- und Bewegungserfassung). Die folgenden Schlüssel müssen in der Info.plist
Datei Ihrer Anwendung vorhanden sein:
NSCameraUsageDescription
NSMicrophoneUsageDescription
< key >NSCameraUsageDescription</ key >
< string >Required for document and face capture</ string >
< key >NSMicrophoneUsageDescription</ key >
< string >Required for video capture</ string >
Hinweis : Für die App-Übermittlung sind alle Schlüssel erforderlich.
Das SDK ist mit Swift Package Manager verfügbar und Sie können es in Ihr Projekt einbinden, indem Sie die folgende Paket-Repository-URL hinzufügen:
dependencies: [
. package ( url : " https://github.com/onfido/onfido-ios-sdk.git " , . branch ( " master " ) )
]
Das SDK ist auch auf CocoaPods verfügbar und Sie können es in Ihr Projekt einbinden, indem Sie Folgendes zu Ihrer Poddatei hinzufügen:
pod 'Onfido'
Führen Sie pod install
aus, um das SDK abzurufen.
Das SDK ist auf der Registerkarte „GitHub-Releases“ verfügbar, wo Sie das komprimierte Framework herunterladen können. Die neueste Version finden Sie hier.
Onfido.xcframework
enthältOnfido.xcframework
-Artefakt in Ihren ProjektordnerOnfido.xcframework
das sich in Ihrem Projekt befindet, zum Abschnitt Embedded binaries
auf der Registerkarte General
Ihres iOS-App-Ziels hinzuWenn Ihre App nicht auf Swift basiert, müssen Sie in Ihrem Projekt eine neue Swift-Datei erstellen. Diese Datei ist erforderlich, um Xcode zu zwingen, Swift-Laufzeitbibliotheken zu packen, die für die Ausführung des Onfido iOS SDK erforderlich sind.
Erstellen Sie eine Swift-Datei mit folgendem Inhalt:
import Foundation
import AVFoundation
import CoreImage
import UIKit
import Vision
func fixLibSwiftOnoneSupport ( ) {
// from https://stackoverflow.com/a/54511127/2982993
print ( " Fixes dyld: Library not loaded: @rpath/libswiftSwiftOnoneSupport.dylib " )
}
Legen Sie in Ihrer Projektkonfiguration Always Embed Swift Standard Libraries
auf Yes
fest.
️ Die folgende SDK-Initialisierungsdokumentation gilt für Workflows zur Identitätsüberprüfung, die mit Onfido Studio orchestriert werden. Für Integrationen, bei denen die Verifizierungsschritte manuell definiert und konfiguriert werden, lesen Sie bitte den Abschnitt „Erweiterte Flow-Anpassung“ weiter unten.
Das iOS SDK verfügt über mehrere Initialisierungs- und Anpassungsoptionen, die Ihrer Integration Flexibilität verleihen und gleichzeitig einfach zu integrieren sind.
Onfido Studio ist die Plattform, mit der hoch wiederverwendbare Workflows zur Identitätsüberprüfung für die Verwendung mit den Onfido SDKs erstellt werden. Eine Einführung in die Arbeit mit Workflows finden Sie in unserem Leitfaden „Erste Schritte“ oder im Onfido Studio-Produkthandbuch.
SDK-Sitzungen werden durch eine sitzungsspezifische workflow_run_id
orchestriert, die wiederum von einer workflow_id
abgeleitet ist, der eindeutigen Kennung eines bestimmten Workflows.
Einzelheiten zum Generieren einer workflow_run_id
finden Sie in der Endpunktdefinition POST /workflow_runs/
in der Onfido-API-Referenz.
Beachten Sie , dass im Kontext des SDK die Eigenschaft
workflow_run_id
alsworkflowRunId
bezeichnet wird.
Bei der Definition von Arbeitsabläufen und der Erstellung von Identitätsüberprüfungen empfehlen wir dringend, die applicant_id
für einen bestimmten Benutzer zur möglichen Wiederverwendung zu speichern. Dies hilft dabei, den Überblick über Benutzer zu behalten, wenn Sie mehrere Identitätsüberprüfungen für dieselbe Person durchführen möchten oder in Szenarien, in denen ein Benutzer zu einem Überprüfungsvorgang zurückkehrt und ihn fortsetzt.
Das SDK wird mithilfe von SDK-Tokens authentifiziert. Onfido Studio generiert und stellt SDK-Tokens in der Nutzlast der Workflow-Ausführung bereit, die von der API zurückgegeben wird, wenn eine Workflow-Ausführung erstellt wird.
SDK-Tokens für Studio können nur zusammen mit dem spezifischen Workflow-Lauf verwendet werden, für den sie generiert wurden, und bleiben für einen Zeitraum von fünf Wochen gültig.
Hinweis : Sie dürfen niemals API-Tokens im Frontend Ihrer Anwendung verwenden, da böswillige Benutzer sie in Ihrem Quellcode entdecken könnten. Sie sollten sie nur auf Ihrem Server verwenden.
Um das SDK verwenden zu können, müssen Sie mithilfe Ihres generierten SDK-Tokens und Ihrer Workflow-Ausführungs-ID eine Instanz des Clientobjekts abrufen.
let workflowConfiguration = WorkflowConfiguration ( workflowRunId : " <WORKFLOW_RUN_ID> " , sdkToken : " <YOUR_SDK_TOKEN> " )
let onfidoRun = OnfidoFlow ( workflowConfiguration : orchestrationConfig )
customerViewController . present ( try onfidoRun . run ( ) , animated : true , completion : nil )
// listen for the result
Aktuelle Reisepässe, Personalausweise und Aufenthaltsgenehmigungen enthalten einen Chip, auf den über Near Field Communication (NFC) zugegriffen werden kann. Die Onfido SDKs bieten eine Reihe von Bildschirmen und Funktionen, um diese Informationen zu extrahieren, ihre Authentizität zu überprüfen und die resultierende Überprüfung als Teil eines Dokumentberichts bereitzustellen.
Ab Version 29.1.0 des Onfido iOS SDK ist NFC standardmäßig aktiviert und wird Endbenutzern angeboten, wenn sowohl das Dokument als auch das Gerät NFC unterstützen.
Weitere Informationen zur Konfiguration von NFC und zur Liste der unterstützten Dokumente finden Sie im Leitfaden „NFC for Document Report“.
Für diese Funktion ist die Fähigkeit Near Field Communication Tag Reading
in Ihrem App-Ziel erforderlich. Wenn Sie es noch nicht hinzugefügt haben, befolgen Sie bitte die Schritte in der Dokumentation von Apple.
Um NFC PACE-Dokumente zu unterstützen, müssen Sie App-Berechtigungen bearbeiten:
Near Field Communication Tag Reader Session Formats
verschachtelt istPassword Authenticated Connection Establishment (PACE)
aus der Dropdown-Liste aus< key >com.apple.developer.nfc.readersession.formats</ key >
< array >
< string >PACE</ string >
< string >TAG</ string >
</ array >
Sie müssen den folgenden Schlüssel in der Info.plist
Datei Ihrer Anwendung haben:
< key >NFCReaderUsageDescription</ key >
< string >Required to read ePassports</ string >
Info.plist
Datei Ihres App-Ziels aufnehmen, um NFC-Tags ordnungsgemäß lesen zu können. <key>com.apple.developer.nfc.readersession.felica.systemcodes</key>
<array>
<string>12FC</string>
</array>
<key>com.apple.developer.nfc.readersession.iso7816.select-identifiers</key>
<array>
<string>A0000002471001</string>
<string>A0000002472001</string>
<string>00000000000000</string>
<string>D2760000850101</string>
</array>
Um NFC mit Onfido Studio zu konfigurieren, können Sie eine der folgenden Optionen im Workflow Builder verwenden:
optional
): NFC-Lesen wird versucht, wenn möglich Um NFC im Code zu konfigurieren, rufen Sie die Funktion withNFC()
auf, während Sie OnfidoConfig
konfigurieren (siehe Abschnitt „Erweiterte Flow-Anpassung“ unten) mit den oben genannten Optionen.
️ Wenn NFC nachrequired
mit Code konfiguriert ist, filtert das SDK im Gegensatz zu Studio keine Dokumenttypen heraus, die nicht NFC-fähig sind. Für ein optimales Endbenutzererlebnis stellen Sie nur Dokumenttypen zur Verfügung, die wie hier aufgeführt NFC-fähig sind, oder bevorzugen Sie die Verwendung von Studio
Das iOS SDK unterstützt die Anpassung von Farben, Schriftarten und Zeichenfolgen, die im SDK-Flow verwendet werden.
Um das Erscheinungsbild des SDK anzupassen, können Sie die erforderlichen CSS-Werte an das Appearance
-Objekt im Stammverzeichnis des WorkflowConfiguration
Objekts übergeben.
let appearance = Appearance ( )
appearance . primaryColor = < DESIRED_UI_COLOR_HERE >
appearance . primaryTitleColor = < DESIRED_UI_COLOR_HERE >
ONAppearance *appearance = [[ONAppearance alloc ] init ];
appearance.primaryColor = <DESIRED_UI_COLOR_HERE>;
appearance.primaryTitleColor = <DESIRED_UI_COLOR_HERE>;
Einzelheiten zu den unterstützten UI-Optionen, die in dieser Eigenschaft festgelegt werden können, finden Sie in der SDK-Anpassungsdokumentation.
Das iOS SDK unterstützt die Anpassung dunkler Themes. Standardmäßig wird das aktive Gerätedesign des Benutzers automatisch auf das Onfido SDK angewendet. Sie können jedoch den dynamischen Theme-Wechsel zur Laufzeit deaktivieren und stattdessen ein Theme statisch zur Build-Zeit festlegen, wie unten gezeigt. In diesem Fall wird der Flow unabhängig vom Gerätedesign des Benutzers immer im ausgewählten Design angezeigt.
interfaceStyle
können Sie über .dark
bzw. .light
den Hell- oder Dunkelmodus erzwingen. Standardmäßig ist es auf .unspecified
eingestellt, was dem Schnittstellenstil des Systems folgt.
Hinweis: Das vorherige Attribut supportDarkMode
ist jetzt veraltet. Bitte verwenden Sie stattdessen interfaceStyle
.
Um beispielsweise den Schnittstellenstil auf .dark
festzulegen, können Sie den folgenden Code verwenden:
let appearance = Appearance ( )
appearance . setUserInterfaceStyle ( . dark )
ONAppearance *appearance = [ONAppearance new ];
[appearance setUserInterfaceStyle: UIUserInterfaceStyleDark];
Um das Erscheinungsbild anzuwenden, können Sie die folgenden Methoden verwenden:
let configBuilder = OnfidoConfig . builder ( )
configBuilder . withAppearance ( appearance )
ONFlowConfigBuilder *configBuilder = [ONFlowConfig builder ];
[configBuilder withAppearance: appearance];
Das Onfido SDK ermöglicht zwei Co-Branding-Optionen, die sich auf die Anzeige des Onfido-Logos am unteren Rand der Onfido-Bildschirme auswirken.
cobrand {Object}
– optional
Der effektivste Weg, Ihre Marke zum Fußzeilen-Wasserzeichen hinzuzufügen, ist die Verwendung der cobrand
Eigenschaft unter enterpriseFeatures
. Diese Eigenschaft akzeptiert einen text
.
let companyName = " MyCompany "
let enterpriseFeatures = EnterpriseFeatures . builder ( )
. withCobrandingText ( companyName )
. build ( )
NSString *companyName = @" MyCompany " ;
ONEnterpriseFeaturesBuilder *enterpriseFeatures = [ONEnterpriseFeatures builder ];
[enterpriseFeatures withCobrandingText: companyName];
[enterpriseFeatures build ];
Bitte beachten Sie : Text-Co-Branding muss von Onfido aktiviert werden. Bitte wenden Sie sich an Ihren Solutions Engineer oder Customer Success Manager, um die Funktion zu aktivieren.
logoCobrand {Object}
– optional
Als Alternative zum cobrand
können Sie eine Reihe von Bildern angeben, die in der Eigenschaft logoCobrand
unter enterpriseFeatures
definiert werden sollen. Sie müssen den Pfad zu einem Bild für die Verwendung im „Dunkel“-Modus und ein separates Bild für den „Hell“-Modus angeben. Beide Bilder müssen eine Auflösung von 144x32 haben.
let onfidoEnterpriseFeatures = EnterpriseFeatures . builder ( )
. withCobrandingLogo (
UIImage ( named : " imageName_for_lightmode " ) ! ,
cobrandingLogoDarkMode : UIImage ( named : " imageName_for_darkmode " ) !
)
. build ( )
ONEnterpriseFeaturesBuilder *enterpriseFeatures = [ONEnterpriseFeatures builder ];
[enterpriseFeatures withCobrandingLogo:
[UIImage imageNamed: @" onfido-logo-white " ] cobrandingLogoDarkMode: [UIImage imageNamed: @" onfido-logo-grey " ]
];
[enterpriseFeatures build ];
Bitte beachten Sie : Logo-Co-Branding muss von Onfido aktiviert werden. Bitte wenden Sie sich an Ihren Solutions Engineer oder Customer Success Manager, um die Funktion zu aktivieren.
Um Co-Branding anzuwenden, fügen Sie das Enterprise-Features-Objekt zu OnfidoConfig
hinzu:
let configBuilder = OnfidoConfig . builder ( )
configBuilder . withEnterpriseFeatures ( enterpriseFeatures )
ONFlowConfigBuilder *configBuilder = [ONFlowConfig builder ];
[configBuilder withEnterpriseFeatures: enterpriseFeatures];
Das Onfido SDK unterstützt und verwaltet Übersetzungen für über 40 Sprachen.
Die im SDK verwendeten Zeichenfolgen können angepasst werden, indem Sie in Ihrer App eine Localizable.strings
für die gewünschte Sprache haben und den Ablauf mithilfe der Methode withCustomLocalization()
im Konfigurations-Builder konfigurieren.
- ( void ) withCustomLocalization {
[ self . configBuilder withCustomLocalization ] ; // will look for localizable strings in your Localizable.strings file
}
Die Liste der von Onfido unterstützten Sprachen finden Sie in unserer Dokumentation zur SDK-Anpassung.
Hinweis : Wenn keine Sprache ausgewählt ist, erkennt und verwendet das SDK die Gerätespracheneinstellung des Endbenutzers. Wenn die Sprache des Geräts nicht unterstützt wird, verwendet das SDK standardmäßig Englisch ( en_US
).
Das SDK kann auch in einer benutzerdefinierten Sprache für Gebietsschemas angezeigt werden, die Onfido derzeit nicht unterstützt. Sie können vollständige oder teilweise Übersetzungen liefern. Für jeden Schlüssel ohne Übersetzung wird die unterstützte Standardsprache verwendet.
Wenn Sie benutzerdefinierte Übersetzungen hinzufügen, müssen Sie den gesamten Schlüsselsatz hinzufügen, der in der Datei Localizable.strings
enthalten ist.
Sie können die Zeichenfolgendatei mit den übersetzten Schlüsseln nach Ihren Wünschen benennen, der Name der Datei muss jedoch dem SDK als Parameter für die Methode withCustomLocalization()
bereitgestellt werden:
withCustomLocalization(andTableName: "MY_CUSTOM_STRINGS_FILE")
(Swift)[configBuilder withCustomLocalizationWithTableName:@"MY_CUSTOM_STRINGS_FILE"];
(Ziel-C)Zusätzlich können Sie das Bundle angeben, aus dem die Strings-Datei gelesen werden soll:
withCustomLocalization(andTableName: "MY_CUSTOM_STRINGS_FILE", in: myBundle)
(Swift)[configBuilder withCustomLocalizationWithTableName:@"MY_CUSTOM_STRINGS_FILE" in: myBundle];
(Ziel-C)Notiz :
Wenn Sie eine neue Sprachübersetzung anfordern oder Feedback oder Vorschläge zu den bereitgestellten Übersetzungen abgeben möchten, können Sie sich an den Kundensupport von Onfido wenden
Wenn die Onfido SDK-Sitzung abgeschlossen ist, können eine Reihe von Rückruffunktionen ausgelöst werden.
Informationen zu erweiterten Rückrufen, die für Benutzeranalysen und die Rückgabe eingereichter Medien verwendet werden, finden Sie im Abschnitt „Erweiterte Rückrufe“ dieses Dokuments.
Um das Ergebnis eines abgeschlossenen Workflows zu erhalten, sollten Sie einen Rückruf an die Instanz von OnfidoFlow
übergeben. Als Beispiel wird der folgende Code bereitgestellt:
onfidoRun . with ( responseHandler : { ( response : OnfidoResponse ) in
switch response {
case . success :
// User completed the flow
case . cancel ( let cancellationReason ) :
// Flow cancelled by user
print ( cancellationReason )
case . error ( let error ) :
// Error occurred
print ( error )
}
} ,
dismissFlowOnCompletion : true )
// Dismiss the whole flow when the user completes it, and return back to the integrator view
ATTRIBUT | HINWEISE |
---|---|
.Erfolg | Rückruf, der ausgelöst wird, wenn alle interaktiven Aufgaben im Workflow abgeschlossen wurden. Wenn Sie Webhooks konfiguriert haben, wird bei Erfolg eine Benachrichtigung an Ihr Backend gesendet, die bestätigt, dass die Workflow-Ausführung abgeschlossen ist. Sie müssen keinen Scheck über Ihr Backend erstellen, da dies direkt vom Workflow erledigt wird |
.error(Fehler) | Rückruf, der ausgelöst wird, wenn ein Fehler auftritt |
.stornieren | Rückruf, der ausgelöst wird, wenn der Workflow vom Benutzer vorzeitig beendet wurde. Der Grund kann .userExit oder .consentDenied sein |
Das als Teil von OnfidoResponse.error(Error)
zurückgegebene Error
Objekt ist vom Typ OnfidoFlowError
. Es handelt sich um eine Aufzählung mit mehreren Fällen, abhängig vom Fehlertyp.
switch response {
case let OnfidoResponse . error ( error ) :
switch error {
case OnfidoFlowError . cameraPermission :
// This happens if the user denies permission to the SDK during the flow
case OnfidoFlowError . failedToWriteToDisk :
// This happens when the SDK tries to save capture to disk, maybe due to a lack of space
case OnfidoFlowError . microphonePermission :
// This happens when the user denies permission for microphone usage by the app during the flow
case OnfidoFlowError . upload ( let OnfidoApiError ) :
// This happens when the SDK receives an error from an API call.
// See https://documentation.onfido.com/api/latest#errors for more information
case OnfidoFlowError . exception ( withError : let error , withMessage : let message ) :
// This happens when an unexpected error occurs.
// Please email [Customer support](mailto:supportonfido.com) when this happens
case OnfidoFlowError . versionInsufficient :
// This happens when you are using an older version of the iOS SDK and trying
// to access a new functionality from workflow. You can fix this by updating the SDK
default : // necessary because of Swift
}
}
Während das SDK für die Erfassung und das Hochladen der Medien und Daten des Benutzers verantwortlich ist, werden die Berichte zur Identitätsprüfung selbst auf der Grundlage von mit Onfido Studio erstellten Workflows generiert.
Eine Schritt-für-Schritt-Anleitung zum Erstellen einer Identitätsüberprüfung mit Onfido Studio und unseren SDKs finden Sie in unserer Kurzanleitung.
Wenn Ihre Anwendung das Onfido iOS SDK mit den im Abschnitt „Erweiterte Anpassung“ dieses Dokuments definierten Optionen initialisiert, können Sie mithilfe der Onfido-API manuell Prüfungen erstellen und Berichtsergebnisse abrufen. Sie können Webhooks auch so konfigurieren, dass sie asynchron benachrichtigt werden, wenn die Berichtsergebnisse generiert wurden.
Dieser Abschnitt zur „Erweiterten Anpassung“ bezieht sich auf den Prozess der Initialisierung des Onfido iOS SDK ohne die Verwendung von Onfido Studio. Dieser Prozess erfordert eine manuelle Definition der Verifizierungsschritte und deren Konfiguration.
Diese Flow-Schritt-Parameter schließen sich gegenseitig mit workflowRunId
aus und erfordern eine alternative Methode zum Instanziieren des Clients und Starten des Flows.
Beachten Sie , dass dieser Initialisierungsprozess nicht empfohlen wird, da die meisten neuen Funktionen ausschließlich für Studio-Workflows freigegeben sind.
Das SDK wird mithilfe von SDK-Tokens authentifiziert. Da jedes SDK-Token für einen bestimmten Bewerber und eine bestimmte Sitzung spezifisch sein muss, muss jedes Mal, wenn Sie das Onfido iOS SDK initialisieren, ein neues Token generiert werden.
Parameter | Notizen |
---|---|
applicant_id | erforderlich Gibt den Antragsteller für die SDK-Instanz an. |
application_id | erforderlich Die Anwendungs-ID (für iOS „Anwendungspaket-ID“), die während der Entwicklung eingerichtet wurde. Für iOS hat dies normalerweise die Form com.your-company.app-name . Stellen Sie sicher, dass Sie eine gültige application_id verwenden, sonst erhalten Sie einen 401-Fehler. |
Einzelheiten zum manuellen Generieren von SDK-Tokens finden Sie in der Definition POST /sdk_token/
in der Onfido-API-Referenz.
Hinweis : Sie dürfen niemals API-Tokens im Frontend Ihrer Anwendung verwenden, da böswillige Benutzer sie in Ihrem Quellcode entdecken könnten. Sie sollten sie nur auf Ihrem Server verwenden.
expireHandler
Bei der manuellen Generierung von SDK-Tokens ist zu beachten, dass diese nach 90 Minuten ablaufen.
Vor diesem Hintergrund empfehlen wir Ihnen, den optionalen Parameter expireHandler
in der SDK-Token-Konfigurationsfunktion zu verwenden, um ein neues SDK-Token zu generieren und zu übergeben, wenn es abläuft. Dadurch wird sichergestellt, dass das SDK seinen Fluss auch dann fortsetzt, wenn ein SDK-Token abgelaufen ist.
Zum Beispiel:
func getSDKToken ( _ completion : @escaping ( String ) -> Void ) {
// Your network request logic to retrieve SDK token goes here
completion ( myNewSDKtoken )
}
let config = try OnfidoConfig . builder ( )
. withSDKToken ( " <YOUR_SDK_TOKEN> " , expireHandler : getSDKToken )
-( void ) getSDKToken: ( void (^)( NSString *)) handler {
// <Your network request logic to retrieve SDK token goes here>
handler (sdkToken);
}
ONFlowConfigBuilder *configBuilder = [ONFlowConfig builder ];
[configBuilder withSdkToken: @" YOUR_SDK_TOKEN " expireHandler: ^( void (^ handler)( NSString * expireHandler)) {
[ self getSDKToken: handler];
}];
Sobald Sie die SDK-Abhängigkeit hinzugefügt haben und über eine Bewerber-ID verfügen, können Sie die SDK-Ablaufschritte manuell konfigurieren:
let config = try OnfidoConfig . builder ( )
. withSDKToken ( " <YOUR_SDK_TOKEN> " )
. withWelcomeStep ( )
. withDocumentStep ( )
. withProofOfAddressStep ( )
. withFaceStep ( ofVariant : . photo ( withConfiguration : nil ) )
. build ( )
let onfidoFlow = OnfidoFlow ( withConfiguration : config )
. with ( responseHandler : { results in
// Callback when flow ends
} )
ONFlowConfigBuilder *configBuilder = [ONFlowConfig builder ];
[configBuilder withSdkToken: @" YOUR_SDK_TOKEN " ];
[configBuilder withWelcomeStep ];
[configBuilder withDocumentStep ];
[configBuilder withProofOfAddressStep ];
NSError *variantConfigError = NULL ;
Builder *variantBuilder = [ONFaceStepVariantConfig builder ];
[variantBuilder withPhotoCaptureWithConfig: NULL ];
[configBuilder withFaceStepOfVariant: [variantBuilder buildAndReturnError: &variantConfigError]];
if (variantConfigError == NULL ) {
NSError *configError = NULL ;
ONFlowConfig *config = [configBuilder buildAndReturnError: &configError];
if (configError == NULL ) {
ONFlow *onFlow = [[ONFlow alloc ] initWithFlowConfiguration: config];
[onFlow withResponseHandler: ^(ONFlowResponse *response) {
// Callback when flow ends
}];
}
}
try onfidoRun . run ( from : yourViewController , animated : true )
NSError *runError = NULL ;
[onFlow runFrom: yourViewController animated: YES error: &runError completion: nil ];
if (runError != NULL ) {
// do fallback logic
}
Um das Erscheinungsbild des SDK anzupassen, können Sie die erforderlichen CSS-Werte an das Appearance
Objekt im Stammverzeichnis des OnfidoConfig.builder()
-Objekts übergeben.
let appearance = Appearance ( )
appearance . primaryColor = < DESIRED_UI_COLOR_HERE >
appearance . primaryTitleColor = < DESIRED_UI_COLOR_HERE >
ONAppearance *appearance = [[ONAppearance alloc ] init ];
appearance.primaryColor = <DESIRED_UI_COLOR_HERE>;
appearance.primaryTitleColor = <DESIRED_UI_COLOR_HERE>;
Um das Erscheinungsbild anzuwenden, können Sie die folgenden Methoden verwenden:
let configBuilder = OnfidoConfig . builder ( )
configBuilder . withAppearance ( appearance )
ONFlowConfigBuilder *configBuilder = [ONFlowConfig builder ];
[configBuilder withAppearance: appearance];
Einzelheiten zu den unterstützten UI-Optionen, die in dieser Eigenschaft festgelegt werden können, finden Sie in der SDK-Anpassungsdokumentation.
Sie können den Ablauf des SDK anpassen, indem Sie Schritte zum SDK-Ablauf hinzufügen.
Zu den möglichen Schritten gehören:
Schritt | Beschreibung |
---|---|
withWelcomeStep | Dem Benutzer wird ein Begrüßungsbildschirm mit vorläufigen Anweisungen angezeigt. Zu den Anpassungsoptionen gehören Änderungen an den Textelementen und Anweisungen, die dem Benutzer angezeigt werden. |
withDocumentStep | Eine Reihe von Bildschirmen, die die Erfassung per Foto oder Hochladen des Dokuments des Benutzers steuern. Es stehen zahlreiche Anpassungsoptionen zur Verfügung, um die dem Benutzer angezeigte Dokumentenliste und das gesamte Erfassungserlebnis zu definieren. |
withFaceStep | Satz von Bildschirmen, die die Aufnahme eines Selfies, Videos oder einer Bewegungsaufnahme des Benutzers steuern. Die Anpassungsoptionen ermöglichen die Auswahl der Erfassungsvariante. |
withProofOfAddressStep | Bildschirm, auf dem der Benutzer das ausstellende Land und die Art des Dokuments auswählt, um seine Adresse zu überprüfen. |
Dieser Schritt ist der Einführungsbildschirm des SDK. Es führt in den Prozess ein und bereitet den Benutzer auf die Schritte vor, die er ausführen muss.
Obwohl dieser Bildschirm optional ist, empfehlen wir seine Entfernung nur, wenn Sie bereits über einen eigenen Begrüßungsbildschirm zur Identitätsprüfung verfügen.
Sie können den Begrüßungsbildschirm anzeigen, indem Sie configBuilder.withWelcomeStep()
in Swift oder [configBuilder withWelcomeStep]
in Objective-C aufrufen.