Onfido Smart Capture SDK menyediakan serangkaian layar dan fungsi yang memungkinkan aplikasi menerapkan alur verifikasi identitas pengguna. Setiap SDK berisi:
Semua SDK Onfido Smart Capture diatur menggunakan alur kerja Onfido Studio, dengan hanya sedikit perbedaan penyesuaian antara platform yang tersedia.
Ada dua lingkungan untuk mendukung integrasi Onfido SDK:
Lingkungan yang digunakan ditentukan oleh token API yang digunakan untuk menghasilkan token SDK yang diperlukan.
Setelah Anda puas dengan integrasi Anda dan siap untuk ditayangkan, silakan hubungi Dukungan Pelanggan Onfido untuk mendapatkan token API langsung. Anda harus mengganti token sandbox di kode Anda dengan token langsung.
Periksa apakah Anda telah memasukkan detail penagihan yang benar di dalam Dasbor Onfido Anda, sebelum ditayangkan.
SDK iOS mendukung:
Catatan : Versi SDK terbaru yang mendukung Xcode 11.5-12 adalah iOS SDK versi 22, Xcode 14+ adalah iOS SDK versi 29. Ada solusi untuk versi Xcode yang lebih lama jika diperlukan. Silakan hubungi tim Dukungan Pelanggan Onfido untuk informasi lebih lanjut.
Catatan : SDK iOS memerlukan CoreNFC untuk dijalankan (terlepas dari apakah Anda menggunakan NFC atau tidak). Sejak Xcode 12, ada bug di mana libnfshared.dylib
hilang dari simulator. Lihat Stack Overflow untuk solusi masalah ini.
Catatan : Jika Anda menonaktifkan fitur NFC, Apple mungkin meminta Anda menyediakan video untuk mendemonstrasikan penggunaan NFC karena kode terkait NFC adalah bagian dari biner SDK, apa pun konfigurasi runtimenya. Sementara kami sedang mengerjakan solusi permanen untuk masalah ini, Anda dapat menghubungi Dukungan Pelanggan Onfido untuk sementara waktu untuk mendapatkan video.
SDK memanfaatkan kamera perangkat pengguna (untuk pengambilan dokumen dan wajah) dan mikrofon (untuk pengambilan video dan gerakan). Anda harus memiliki kunci berikut di file Info.plist
aplikasi Anda:
NSCameraUsageDescription
NSMicrophoneUsageDescription
< key >NSCameraUsageDescription</ key >
< string >Required for document and face capture</ string >
< key >NSMicrophoneUsageDescription</ key >
< string >Required for video capture</ string >
Catatan : Semua kunci akan diperlukan untuk pengiriman aplikasi.
SDK tersedia dengan Swift Package Manager, dan Anda dapat memasukkannya ke dalam proyek Anda dengan menambahkan URL repositori paket berikut:
dependencies: [
. package ( url : " https://github.com/onfido/onfido-ios-sdk.git " , . branch ( " master " ) )
]
SDK ini juga tersedia di CocoaPods, dan Anda dapat memasukkannya ke dalam proyek Anda dengan menambahkan yang berikut ke Podfile Anda:
pod 'Onfido'
Jalankan pod install
untuk mendapatkan SDK.
SDK tersedia di tab Rilis GitHub, tempat Anda dapat mengunduh kerangka terkompresi. Anda dapat menemukan rilis terbaru di sini.
Onfido.xcframework
Onfido.xcframework
ke folder proyek AndaOnfido.xcframework
yang terletak dalam proyek Anda ke bagian Embedded binaries
di tab General
target aplikasi iOS AndaJika aplikasi Anda tidak berbasis Swift, Anda harus membuat file Swift baru di dalam proyek Anda. File ini diperlukan untuk memaksa Xcode mengemas pustaka runtime Swift yang diperlukan agar SDK iOS Onfido dapat dijalankan.
Buat file Swift dengan konten berikut:
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 " )
}
Atur Always Embed Swift Standard Libraries
ke Yes
dalam konfigurasi proyek Anda.
️ Dokumentasi inisialisasi SDK berikut berlaku untuk alur kerja verifikasi identitas yang diatur menggunakan Onfido Studio. Untuk integrasi yang langkah verifikasinya ditentukan dan dikonfigurasi secara manual, lihat bagian Penyesuaian alur lanjutan di bawah.
iOS SDK memiliki beberapa opsi inisialisasi dan penyesuaian yang memberikan fleksibilitas pada integrasi Anda, namun tetap mudah untuk diintegrasikan.
Onfido Studio adalah platform yang digunakan untuk membuat alur kerja verifikasi identitas yang sangat dapat digunakan kembali untuk digunakan dengan SDK Onfido. Untuk pengenalan cara bekerja dengan alur kerja, silakan merujuk ke panduan Memulai kami, atau panduan produk Onfido Studio.
Sesi SDK diatur oleh workflow_run_id
khusus sesi, yang berasal dari workflow_id
, pengidentifikasi unik dari alur kerja tertentu.
Untuk detail tentang cara membuat workflow_run_id
, lihat definisi titik akhir POST /workflow_runs/
di referensi API Onfido.
Perhatikan bahwa dalam konteks SDK, properti
workflow_run_id
disebut sebagaiworkflowRunId
.
Saat menentukan alur kerja dan membuat verifikasi identitas, kami sangat menyarankan untuk menyimpan applicant_id
terhadap pengguna tertentu agar dapat digunakan kembali. Hal ini membantu melacak pengguna jika Anda ingin menjalankan beberapa verifikasi identitas pada individu yang sama, atau dalam skenario ketika pengguna kembali dan melanjutkan alur verifikasi.
SDK diautentikasi menggunakan token SDK. Onfido Studio menghasilkan dan mengekspos token SDK dalam payload eksekusi alur kerja yang dikembalikan oleh API saat eksekusi alur kerja dibuat.
Token SDK untuk Studio hanya dapat digunakan bersama dengan alur kerja spesifik yang digunakan untuk pembuatannya, dan tetap valid untuk jangka waktu lima minggu.
Catatan : Anda tidak boleh menggunakan token API di frontend aplikasi Anda karena pengguna jahat dapat menemukannya di kode sumber Anda. Anda sebaiknya hanya menggunakannya di server Anda.
Untuk menggunakan SDK, Anda perlu mendapatkan instance objek klien, menggunakan token SDK yang dihasilkan dan ID eksekusi alur kerja.
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
Paspor terbaru, kartu identitas nasional, dan izin tinggal berisi chip yang dapat diakses menggunakan Near Field Communication (NFC). SDK Onfido menyediakan serangkaian layar dan fungsi untuk mengekstrak informasi ini, memverifikasi keasliannya, dan memberikan verifikasi yang dihasilkan sebagai bagian dari laporan Dokumen.
Mulai versi 29.1.0 dan seterusnya dari Onfido iOS SDK, NFC diaktifkan secara default dan ditawarkan kepada pengguna akhir ketika dokumen dan perangkat mendukung NFC.
Untuk informasi lebih lanjut tentang cara mengkonfigurasi NFC dan daftar dokumen yang didukung, silakan merujuk ke panduan NFC untuk Laporan Dokumen.
Fitur ini memerlukan kemampuan Near Field Communication Tag Reading
di target aplikasi Anda. Jika Anda belum menambahkannya, ikuti langkah-langkah dalam dokumentasi Apple.
Untuk mendukung dokumen NFC PACE, Anda perlu mengedit hak aplikasi:
Near Field Communication Tag Reader Session Formats
Password Authenticated Connection Establishment (PACE)
dari daftar dropdown< key >com.apple.developer.nfc.readersession.formats</ key >
< array >
< string >PACE</ string >
< string >TAG</ string >
</ array >
Anda harus memiliki kunci berikut di file Info.plist
aplikasi Anda:
< key >NFCReaderUsageDescription</ key >
< string >Required to read ePassports</ string >
Info.plist
target aplikasi Anda agar dapat membaca tag NFC dengan benar. <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>
Untuk mengonfigurasi NFC menggunakan Onfido Studio, Anda dapat menggunakan salah satu opsi berikut di pembuat alur kerja:
optional
): Pembacaan NFC akan dicoba, jika memungkinkan Untuk mengonfigurasi NFC dalam kode, panggil fungsi withNFC()
saat mengonfigurasi OnfidoConfig
(lihat bagian Penyesuaian aliran lanjutan di bawah) menggunakan opsi di atas.
️ Ketika NFC dikonfigurasi sesuairequired
dengan kode, tidak seperti Studio, SDK tidak akan memfilter jenis dokumen yang tidak berkemampuan NFC, untuk pengalaman terbaik bagi pengguna akhir, hanya mengekspos jenis dokumen yang berkemampuan NFC seperti yang tercantum di sini, atau lebih suka menggunakan Studio
iOS SDK mendukung penyesuaian warna, font, dan string yang digunakan dalam aliran SDK.
Untuk menyesuaikan tampilan dan nuansa SDK, Anda dapat meneruskan nilai CSS yang diperlukan ke objek Appearance
, di root objek WorkflowConfiguration
.
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>;
Silakan merujuk ke dokumentasi penyesuaian SDK untuk mengetahui detail opsi UI yang didukung yang dapat diatur di properti ini.
iOS SDK mendukung penyesuaian tema gelap. Secara default, tema perangkat aktif pengguna akan secara otomatis diterapkan ke Onfido SDK. Namun, Anda dapat memilih untuk tidak ikut serta dalam peralihan tema dinamis pada waktu proses dan sebagai gantinya menetapkan tema secara statis pada waktu pembuatan seperti yang ditunjukkan di bawah ini. Dalam hal ini, alur akan selalu ditampilkan dalam tema yang dipilih, apa pun tema perangkat pengguna.
interfaceStyle
memungkinkan Anda untuk memaksakan mode terang atau gelap masing-masing melalui .dark
dan .light
. Secara default, ini diatur ke .unspecified
, yang akan mengikuti gaya antarmuka sistem.
Catatan: Atribut sebelumnya supportDarkMode
kini tidak digunakan lagi. Silakan gunakan interfaceStyle
sebagai gantinya.
Misalnya, untuk menyetel gaya antarmuka ke .dark
, Anda dapat menggunakan kode di bawah ini:
let appearance = Appearance ( )
appearance . setUserInterfaceStyle ( . dark )
ONAppearance *appearance = [ONAppearance new ];
[appearance setUserInterfaceStyle: UIUserInterfaceStyleDark];
Untuk mengaplikasikan tampilannya Anda bisa menggunakan cara di bawah ini:
let configBuilder = OnfidoConfig . builder ( )
configBuilder . withAppearance ( appearance )
ONFlowConfigBuilder *configBuilder = [ONFlowConfig builder ];
[configBuilder withAppearance: appearance];
Onfido SDK memungkinkan dua opsi co-branding yang memengaruhi tampilan logo Onfido di bagian bawah layar Onfido.
cobrand {Object}
- opsional
Cara paling efektif untuk menambahkan merek Anda ke tanda air footer adalah dengan menggunakan properti cobrand
di bawah enterpriseFeatures
. Properti ini mengambil parameter text
.
let companyName = " MyCompany "
let enterpriseFeatures = EnterpriseFeatures . builder ( )
. withCobrandingText ( companyName )
. build ( )
NSString *companyName = @" MyCompany " ;
ONEnterpriseFeaturesBuilder *enterpriseFeatures = [ONEnterpriseFeatures builder ];
[enterpriseFeatures withCobrandingText: companyName];
[enterpriseFeatures build ];
Harap diperhatikan : Co-branding teks harus diaktifkan oleh Onfido. Silakan hubungi Solutions Engineer atau Customer Success Manager Anda untuk mengaktifkan fitur tersebut.
logoCobrand {Object}
- opsional
Sebagai alternatif dari cobrand
, Anda dapat menentukan sekumpulan gambar yang akan ditentukan di properti logoCobrand
pada enterpriseFeatures
. Anda harus menyediakan jalur ke gambar untuk digunakan dalam mode 'gelap' dan gambar terpisah untuk mode 'terang'. Kedua gambar harus memiliki resolusi 144x32.
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 ];
Harap diperhatikan : Logo co-branding harus diaktifkan oleh Onfido. Silakan hubungi Solutions Engineer atau Customer Success Manager Anda untuk mengaktifkan fitur tersebut.
Untuk menerapkan co-branding, tambahkan objek fitur perusahaan ke OnfidoConfig
:
let configBuilder = OnfidoConfig . builder ( )
configBuilder . withEnterpriseFeatures ( enterpriseFeatures )
ONFlowConfigBuilder *configBuilder = [ONFlowConfig builder ];
[configBuilder withEnterpriseFeatures: enterpriseFeatures];
Onfido SDK mendukung dan memelihara terjemahan untuk lebih dari 40 bahasa.
String yang digunakan dalam SDK dapat dikustomisasi dengan memiliki Localizable.strings
di aplikasi Anda untuk bahasa yang diinginkan dan dengan mengonfigurasi alur menggunakan metode withCustomLocalization()
pada pembuat konfigurasi.
- ( void ) withCustomLocalization {
[ self . configBuilder withCustomLocalization ] ; // will look for localizable strings in your Localizable.strings file
}
Untuk daftar bahasa yang didukung oleh Onfido, silakan merujuk ke dokumentasi penyesuaian SDK kami.
Catatan : Jika tidak ada bahasa yang dipilih, SDK akan mendeteksi dan menggunakan pengaturan bahasa perangkat pengguna akhir. Jika bahasa perangkat tidak didukung, SDK akan menggunakan bahasa Inggris secara default ( en_US
).
SDK juga dapat ditampilkan dalam bahasa khusus untuk lokal yang saat ini tidak didukung oleh Onfido. Anda dapat menyediakan terjemahan penuh atau sebagian. Untuk kunci apa pun tanpa terjemahan, bahasa default yang didukung akan digunakan.
Saat menambahkan terjemahan khusus, Anda harus menambahkan seluruh rangkaian kunci yang disertakan dalam file Localizable.strings
.
Anda dapat memberi nama file string dengan kunci yang diterjemahkan sesuai keinginan Anda, tetapi nama file harus diberikan ke SDK sebagai parameter untuk metode withCustomLocalization()
:
withCustomLocalization(andTableName: "MY_CUSTOM_STRINGS_FILE")
(Swift)[configBuilder withCustomLocalizationWithTableName:@"MY_CUSTOM_STRINGS_FILE"];
(Tujuan-C)Selain itu, Anda dapat menentukan bundel untuk membaca file string:
withCustomLocalization(andTableName: "MY_CUSTOM_STRINGS_FILE", in: myBundle)
(Swift)[configBuilder withCustomLocalizationWithTableName:@"MY_CUSTOM_STRINGS_FILE" in: myBundle];
(Tujuan-C)Catatan :
Untuk meminta terjemahan bahasa baru, atau menawarkan umpan balik atau saran mengenai terjemahan yang disediakan, Anda dapat menghubungi Dukungan Pelanggan Onfido
Saat sesi Onfido SDK selesai, serangkaian fungsi panggilan balik mungkin terpicu.
Untuk panggilan balik tingkat lanjut yang digunakan untuk analisis pengguna dan pengembalian media yang dikirimkan, silakan merujuk ke bagian Panggilan Balik Tingkat Lanjut pada dokumen ini.
Untuk menerima hasil dari alur kerja yang telah selesai, Anda harus meneruskan panggilan balik ke instance OnfidoFlow
. Kode berikut diberikan sebagai contoh:
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
ATRIBUT | CATATAN |
---|---|
.kesuksesan | Panggilan balik yang diaktifkan ketika semua tugas interaktif dalam alur kerja telah selesai. Jika berhasil, jika Anda telah mengonfigurasi webhook, pemberitahuan akan dikirim ke backend Anda untuk mengonfirmasi bahwa alur kerja yang dijalankan telah selesai. Anda tidak perlu membuat pemeriksaan menggunakan backend karena ini ditangani langsung oleh alur kerja |
.kesalahan(Kesalahan) | Panggilan balik yang diaktifkan ketika terjadi kesalahan |
.membatalkan | Panggilan balik yang diaktifkan ketika alur kerja ditutup sebelum waktunya oleh pengguna. Alasannya bisa berupa .userExit atau .consentDenied |
Objek Error
yang dikembalikan sebagai bagian dari OnfidoResponse.error(Error)
bertipe OnfidoFlowError
. Ini adalah enum dengan banyak kasus tergantung pada jenis kesalahannya.
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
}
}
Meskipun SDK bertanggung jawab untuk menangkap dan mengunggah media dan data pengguna, laporan verifikasi identitas itu sendiri dibuat berdasarkan alur kerja yang dibuat menggunakan Onfido Studio.
Untuk panduan langkah demi langkah dalam membuat verifikasi identitas menggunakan Onfido Studio dan SDK kami, silakan merujuk ke Panduan Memulai Cepat kami.
Jika aplikasi Anda menginisialisasi Onfido iOS SDK menggunakan opsi yang ditentukan di bagian Penyesuaian lanjutan pada dokumen ini, Anda dapat membuat pemeriksaan dan mengambil hasil laporan secara manual menggunakan API Onfido. Anda juga dapat mengonfigurasi webhook agar diberi tahu secara asinkron saat hasil laporan telah dibuat.
Bagian 'Kustomisasi lanjutan' ini mengacu pada proses inisialisasi SDK iOS Onfido tanpa menggunakan Onfido Studio. Proses ini memerlukan definisi manual tentang langkah-langkah verifikasi dan konfigurasinya.
Parameter langkah alur ini saling eksklusif dengan workflowRunId
, sehingga memerlukan metode alternatif untuk membuat instance klien dan memulai alur.
Perlu diperhatikan bahwa proses inisialisasi ini tidak disarankan karena sebagian besar fitur baru dirilis secara eksklusif untuk alur kerja Studio.
SDK diautentikasi menggunakan token SDK. Karena setiap token SDK harus spesifik untuk pemohon dan sesi tertentu, token baru harus dibuat setiap kali Anda menginisialisasi Onfido iOS SDK.
Parameter | Catatan |
---|---|
applicant_id | diperlukan Menentukan pemohon untuk instans SDK. |
application_id | diperlukan ID aplikasi (untuk "ID bundel aplikasi") iOS yang disiapkan selama pengembangan. Untuk iOS, biasanya dalam bentuk com.your-company.app-name . Pastikan untuk menggunakan application_id yang valid atau Anda akan menerima kesalahan 401. |
Untuk detail tentang cara membuat token SDK secara manual, lihat definisi POST /sdk_token/
di referensi API Onfido.
Catatan : Anda tidak boleh menggunakan token API di frontend aplikasi Anda karena pengguna jahat dapat menemukannya di kode sumber Anda. Anda sebaiknya hanya menggunakannya di server Anda.
expireHandler
Saat membuat token SDK secara manual, penting untuk diperhatikan bahwa token tersebut akan habis masa berlakunya setelah 90 menit.
Dengan mengingat hal ini, kami menyarankan Anda menggunakan parameter expireHandler
opsional di fungsi konfigurasi token SDK untuk menghasilkan dan meneruskan token SDK baru ketika habis masa berlakunya. Hal ini memastikan SDK terus mengalir bahkan setelah token SDK habis masa berlakunya.
Misalnya:
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];
}];
Setelah Anda menambahkan ketergantungan SDK, dan Anda memiliki ID pemohon, Anda dapat mengonfigurasi langkah-langkah alur SDK secara manual:
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
}
Untuk menyesuaikan tampilan dan nuansa SDK, Anda dapat meneruskan nilai CSS yang diperlukan ke objek Appearance
di root objek OnfidoConfig.builder()
.
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>;
Untuk mengaplikasikan tampilannya, Anda bisa menggunakan cara di bawah ini:
let configBuilder = OnfidoConfig . builder ( )
configBuilder . withAppearance ( appearance )
ONFlowConfigBuilder *configBuilder = [ONFlowConfig builder ];
[configBuilder withAppearance: appearance];
Silakan merujuk ke dokumentasi penyesuaian SDK untuk mengetahui detail opsi UI yang didukung yang dapat diatur di properti ini.
Anda dapat menyesuaikan alur SDK dengan menambahkan langkah-langkah ke alur SDK.
Langkah-langkah yang mungkin dilakukan meliputi:
Melangkah | Keterangan |
---|---|
withWelcomeStep | Layar selamat datang ditampilkan kepada pengguna dengan instruksi awal. Opsi penyesuaian mencakup modifikasi pada elemen teks dan instruksi yang ditampilkan kepada pengguna. |
withDocumentStep | Kumpulan layar yang mengontrol pengambilan melalui foto atau unggahan dokumen pengguna. Banyak opsi penyesuaian tersedia untuk menentukan daftar dokumen yang disajikan kepada pengguna dan pengalaman pengambilan secara keseluruhan. |
withFaceStep | Kumpulan layar yang mengontrol pengambilan selfie, video, atau pengambilan gerakan pengguna. Opsi penyesuaian memungkinkan pemilihan varian pengambilan. |
withProofOfAddressStep | Layar tempat pengguna memilih negara penerbit dan jenis dokumen untuk memverifikasi alamatnya. |
Langkah ini adalah layar pengenalan SDK. Ini memperkenalkan proses dan mempersiapkan pengguna untuk langkah-langkah yang perlu mereka selesaikan.
Meskipun layar ini bersifat opsional , kami hanya menyarankan penghapusannya jika Anda sudah memiliki layar pembuka verifikasi identitas Anda sendiri.
Anda dapat menampilkan layar selamat datang dengan memanggil configBuilder.withWelcomeStep()
di Swift atau [configBuilder withWelcomeStep]
di Objective-C.