Jinsi ya Kuongeza Uthibitishaji wa Utambulisho Kwenye Programu Yako ya Flutter (SW)
Mwongozo wa msanidi programu wa kuongeza uthibitishaji wa utambulisho kwenye programu ya Flutter kwa kutumia Didit SDK: usanidi asilia, vipindi vilivyoundwa na backend, utunzaji wa matokeo ya Dart, makosa yaliyochapwa, webhooks.

Uunganisho wa Flutter SDK kwa uthibitishaji wa utambulisho unapaswa kuweka vitambulisho vya kudumu na uidhinishaji wa mwisho kwenye backend yako wakati programu ya simu inazindua mtiririko wa kunasa asilia na ishara ya kipindi cha muda mfupi. Didit Flutter SDK inatoa Dart API moja juu ya iOS asilia na SDK za uthibitishaji za Android, ikirudisha matokeo ya kukamilika, kughairi, au kushindwa yaliyochapwa kwa programu. Uamuzi kamili bado ni wa webhook ya backend au mtiririko wa kurejesha.
Mwongozo huu unatumia tu mbinu za Dart na aina za matokeo zilizothibitishwa dhidi ya chanzo cha sasa cha SDK ya ndani na majaribio. Maelezo ya utegemezi asilia hubadilika katika matoleo, kwa hivyo usanidi wa jukwaa unaelezewa na jukumu na kuunganishwa na mwongozo wa canonical SDK badala ya kunakili Podfile au kizuizi cha Gradle kinachohusika na toleo.
Mambo Muhimu
- Unda vipindi vya uzalishishaji kwenye backend. Weka ufunguo wa API mbali na kifaa na utume tu ishara ya kipindi inayohitajika na SDK.
- Tumia matokeo ya Dart yaliyochapwa kwa uzoefu wa mtumiaji, sio uidhinishaji.
VerificationCompletedinamaanisha mtiririko wa SDK umekwisha; kagua hali ya kuonyesha na subiri uamuzi wa backend wenye mamlaka. - Shughulikia kughairi, kushindwa kulikochapwa, na makosa yasiyotarajiwa ya jukwaa kando. Yanahitaji urejeshaji na uchambuzi tofauti.
- Chukulia usanidi asilia kama miundombinu ya kutolewa. Funguo za faragha za iOS, haki za mawasiliano ya karibu (NFC), malengo ya kupeleka, utegemezi wa Android, ufungaji, na ruhusa lazima zijaribiwe kwenye vifaa halisi.
- Buni mzunguko mzima wa maisha. Uundaji wa kipindi, uwasilishaji wa programu, kunasa, uthibitishaji wa webhook, mabadiliko ya hali ya idempotent, ukaguzi, majaribio tena, na uwezo wa kuangalia huunda ushirikiano mmoja.
Nini Didit Flutter SDK hufanya
Kifurushi cha didit_sdk kinafunga SDK za iOS na Android asilia nyuma ya kiolesura cha Dart kinachoshirikiwa. Inazindua kiolesura cha mtumiaji cha uthibitishaji kama mtiririko asilia wa skrini nzima na inarudi wakati mtumiaji anamaliza, anaghairi, au anakutana na kosa.
SDK inaweza kuzindua mtiririko wa kazi na Uthibitishaji wa Kitambulisho, Ugunduzi wa Uhai, na hundi zingine zilizosanidiwa. Mtiririko wa kazi huamua ni hatua gani zinaonekana; simu ya Flutter haiwakodishi ngumu.
Sehemu ya Dart ya umma inayohusiana na mzunguko wa maisha ni:
DiditSdk.startVerification(token, config: ...)
DiditSdk.startVerificationWithWorkflow(workflowId, vendorData: ..., config: ...)
Kwa uzalishaji, pendelea startVerification na ishara iliyoundwa na backend. Njia ya kitambulisho cha mtiririko wa kazi ni rahisi lakini inatoa backend udhibiti mdogo juu ya vigezo vya juu.
Usanifu: backend, programu ya Flutter, SDK, na webhook
Mtiririko wa uzalishaji una mipaka minne ya uaminifu:
| Kipengele | Inamiliki | Haipaswi kumiliki |
|---|---|---|
| Backend yako | Ufunguo wa API, chaguo la mtiririko wa kazi, rejeleo la mteja, uundaji wa kipindi, hali ya mwisho ya mteja | Kiolesura cha kamera |
| Programu ya Flutter | Ombi la uwasilishaji, UI ya kupakia na kurejesha, uzinduzi wa SDK, uchambuzi wa ndani | Ufunguo wa API wa kudumu au uidhinishaji wa mwisho |
| Didit Flutter SDK | Kunasa asilia na mtiririko wa uthibitishaji uliosanidiwa | Uamuzi wako wa haki ya bidhaa |
| Webhook/mfanyakazi wa kurejesha | Kuingiza matokeo yaliyothibitishwa, kuondoa marudio, upatanishi | Dhana za mteja zisizothibitishwa |
Mfuatano ni:
- Programu ya Flutter iliyoingia huuliza backend yako kuanza uthibitishaji.
- Backend yako huunda kipindi cha uthibitishaji na mtiririko wa kazi uliokusudiwa na rejeleo la mteja la ndani lililo thabiti.
- Backend inarudisha
session_tokeniliyopangwa kwa programu. - Programu inapitia ishara hiyo kwa
DiditSdk.startVerification. - SDK inatoa mtiririko asilia na inarudisha matokeo yaliyochapwa kwa uzoefu wa haraka wa mtumiaji.
- Backend yako inapokea na kuthibitisha tukio la matokeo, inapatanisha hali ya canonical, na inasasisha mteja chini ya sera yako.
- Programu inasoma hali ya mteja ya backend yako kabla ya kutoa ufikiaji au kudai idhini ya mwisho.
Usanifu huu hauamini skrini ya mafanikio kwenye kifaa.
Kwa mkataba wa upande wa seva na mpaka wa tukio, angalia mwongozo wa tathmini ya ushirikiano wa API ya uthibitishaji wa kitambulisho.
Sakinisha kifurushi
Tumia amri ya kifurushi badala ya kunakili toleo ambalo linaweza kupitwa na wakati:
flutter pub add didit_sdk
Kisha ingiza maktaba ya umma:
import 'package:didit_sdk/sdk_flutter.dart';
Kabla ya kuboresha, soma changelog na nyaraka rasmi za Flutter SDK. Angalia mahitaji ya jukwaa yaliyotangazwa dhidi ya programu yako na picha za CI.
Fuata maagizo ya kutolewa kwa Flutter kwa utegemezi asilia; kuchanganya matoleo holela kunaweza kusababisha kutokubaliana.
Sanidi iOS na Android
Majukumu ya iOS
Kunasa kitambulisho kunaweza kutumia vifaa na data zilizolindwa. Kulingana na mtiririko wa kazi uliosanidiwa na lahaja ya SDK, usanidi wa iOS unaweza kuhitaji:
- lengo la kupeleka linalofaa;
- maelezo ya matumizi ya kamera na maikrofoni;
- maelezo ya matumizi ya maktaba ya picha ikiwa upakiaji unaruhusiwa;
- maelezo ya matumizi ya NFC na haki wakati usomaji wa chip umewezeshwa;
- usanidi unaoendana wa CocoaPods;
- uwezo wa kusaini na usambazaji unaolingana na matumizi ya NFC;
- fonti maalum zilizosajiliwa ikiwa fonti maalum ya programu imesanidiwa.
Kukosekana kwa nyuzi za madhumuni ya faragha kunaweza kusitisha programu ya iOS. Jaribu mtiririko kamili wa kazi kwenye kifaa halisi.
Msaada wa NFC unaweza kuongeza lengo la chini la kupeleka au kuongeza utegemezi asilia. Chagua lahaja ya SDK inayolingana na mtiririko wako wa kazi na ufuate hati za sasa kwa usanidi wake wa Podfile.
Majukumu ya Android
Kwenye Android, angalia:
- SDK ya chini na mahitaji ya Java;
- hazina na utegemezi ulioongezwa na programu-jalizi;
- kamera, mtandao, na viingilio vya manifest vya NFC;
- tabia ya ruhusa ya kamera wakati wa kutekeleza;
- utangamano wa Gradle na Kotlin;
- sheria za ufungaji kwa utegemezi asilia au wa kriptografia;
- lahaja ya SDK ya
all,core,autodetection, aunfc; - upunguzaji wa ujenzi wa kutolewa na tabia ya rasilimali.
Bidhaa yako bado inahitaji muktadha wa ruhusa, urejeshaji wa kukataliwa, ufikiaji, na maagizo ya msaada. Jaribu kukataliwa, usumbufu, usuli, mzunguko, na uundaji upya wa mchakato.
Unda vipindi kwenye backend
Backend yako inapaswa kupiga API ya kipindi kwa kutumia ufunguo wa API wa upande wa seva. Unganisha kila kipindi na:
- kitambulisho chako cha mteja thabiti;
- mtiririko wa kazi uliochaguliwa;
- mazingira;
- tabia ya kupiga simu au kurudi inapofaa;
- lugha inayohitajika au maelezo ya mawasiliano;
- maelezo ya mteja yanayotarajiwa ambapo sera inatumia;
- uhusiano wa ndani na metadata ya sera.
Kamwe usiweke ufunguo wa Didit API kwenye Dart, mali za programu, usanidi wa mbali unaosomeka, au ombi la simu.
Rudisha tu ishara ya kipindi na hali ya chini ya uzinduzi. Iweke mbali na uchambuzi, ripoti za ajali, kumbukumbu, matumizi ya ubao wa kunakili, na hifadhi ya muda mrefu.
Fanya maombi ya kuanza kuwa idempotent
Mteja anaweza kugonga mara mbili, kupoteza muunganisho baada ya backend yako kuunda kipindi, au kufungua tena skrini wakati jaribio linatumika. Tumia kitambulisho cha ombi thabiti na mantiki ya backend ambayo inarudisha jaribio lililopo linalofaa badala ya kuunda nakala zilizokatika.
Kitufe cha kupakia cha programu yako kinapaswa kuzuia kugonga mara kwa mara dhahiri, lakini idempotency ya upande wa seva inabaki kuwa muhimu kwa sababu wateja wanajaribu tena na michakato inaanza upya.
Anza uthibitishaji kutoka Dart
Mfano huu kamili wa Dart unatumia tu uingizaji wa SDK, njia, madarasa ya matokeo, sehemu za kipindi, enum ya hali, na sehemu za makosa zilizothibitishwa katika chanzo cha kifurushi:
import 'package:didit_sdk/sdk_flutter.dart';
Future<void> runIdentityVerification(String sessionToken) async {
try {
final result = await DiditSdk.startVerification(
sessionToken,
config: const DiditConfig(
loggingEnabled: false,
),
);
switch (result) {
case VerificationCompleted(:final session):
switch (session.status) {
case VerificationStatus.approved:
print('Mtiririko umekamilika na hali ya mteja iliyoidhinishwa.');
case VerificationStatus.pending:
print('Mtiririko umekamilika na bado unahitaji uamuzi wa backend.');
case VerificationStatus.declined:
print('Mtiririko umekamilika na hali ya mteja iliyokataliwa.');
}
print('Kitambulisho cha Kipindi: ${session.sessionId}');
return;
case VerificationCancelled():
print('Mtumiaji amefuta mtiririko wa uthibitishaji.');
return;
case VerificationFailed(:final error):
print('Kosa la SDK: ${error.type.name}: ${error.message}');
return;
}
} catch (error, stackTrace) {
print('Kosa lisilotarajiwa la jukwaa: $error');
print(stackTrace);
}
}
Mfano unaonyesha muundo wa aina. Programu halisi inapaswa kusasisha hali ya skrini na kuburudisha hali ya backend, kamwe isifungue akaunti kutoka kwa kazi hii pekee.
Kwa nini VerificationCompleted si mara zote idhini
VerificationCompleted ina SessionData, ambaye status ni moja ya:
VerificationStatus.approved;VerificationStatus.pending;VerificationStatus.declined.
Mtiririko wa SDK unaweza kumaliza wakati uthibitishaji unabaki unasubiri au umekataliwa. Ukaguzi wa binadamu au hundi ya asynchronous inaweza pia kubadilisha hali ya backend baada ya simu ya programu kurudi. Taja hali yako ya UI ya ndani "mtiririko umekamilika" badala ya "kitambulisho kimeidhinishwa" hadi backend yako ithibitishe matokeo ya sera.
Hakuna simu ya kuanzisha Flutter
Sehemu ya umma ya Flutter iliyothibitishwa haionyeshi njia tofauti ya kuanzisha. Usinakili muundo wa kuanzisha asilia wa Android kwenye Dart. Ikiwa Android inaripoti notInitialized kupitia matokeo ya Flutter, ichukulie kama tatizo la ushirikiano au daraja la asilia na kagua usanidi wa kifurushi.
Shughulikia makosa yaliyochapwa na urejeshaji
Aina za makosa zilizothibitishwa za SDK ni:
| Aina ya Kosa | Maana kwa sera ya programu | Urejeshaji salama |
|---|---|---|
sessionExpired | Ishara haiwezi tena kuanza kipindi kilichokusudiwa | Uliza backend kwa kipindi kipya halali |
networkError | Mtiririko asilia haukuweza kukamilisha operesheni ya mtandao | Hifadhi muktadha na toa jaribio tena lililofungwa |
cameraAccessDenied | Ufikiaji wa kamera unaohitajika haupatikani | Eleza kwa nini inahitajika na uongoze mipangilio au njia mbadala |
notInitialized | Ushirikiano asilia wa Android au daraja halijawa tayari | Andika muktadha wa kutolewa na chunguza usanidi |
apiError | SDK au huduma ilirudisha kushindwa kwa kiwango cha API | Jaribu tena tu inapokuwa salama; patanisha hali ya backend |
retryBlocked | Mtiririko unazuia jaribio lingine la kiotomatiki | Acha kitanzi na ufuate sera ya backend au msaada |
unknown | Kosa asilia halikulingana na aina inayojulikana ya Dart | Hifadhi njia salama ya kurudi na data ya uhusiano |
Majukwaa asilia yanaweza kuonyesha maelezo tofauti. Weka njia ya unknown.
Tenganisha makosa kutoka kwa matokeo ya mteja
Kushindwa kwa mtandao si kukataliwa; kukataliwa kwa kamera si udanganyifu; kughairi si utambulisho ulioshindwa. Weka kategoria tofauti katika:
- ujumbe wa mtumiaji;
- sheria za kujaribu tena;
- ufikiaji wa bidhaa;
- zana za msaada;
- uchambuzi;
- ripoti za udanganyifu na ubadilishaji.
Majaribio ya Kufungwa
Acha backend iamue kama kipindi kilichopo kinaweza kuendelea au kipya kinahitajika. Epuka kitanzi kisicho na kikomo ambacho huita mara kwa mara SDK na ishara iliyoisha muda au iliyozuiwa. Fuatilia idadi ya majaribio na sababu bila kuandika ishara au ushahidi wa kitambulisho.
Tumia matukio ya backend kama chanzo cha ukweli
SDK inarudisha matokeo mafupi ya mteja. Ushahidi kamili na hali ya mwisho huja kupitia ushirikiano wa upande wa seva. Kishughulikiaji chako cha webhook kinapaswa:
- kupokea ombi ghafi katika fomu inayohitajika na mpango wa saini uliorekodiwa;
- kuthibitisha tukio na kuthibitisha upya;
- kuondoa marudio ya kitambulisho chake cha tukio;
- kuilinganisha na kipindi na mteja anayetarajiwa;
- kuzuia matukio ya zamani yasifute hali ya mwisho ya baadaye;
- kurejesha hali ya canonical ya kipindi wakati upatanishi unahitajika;
- kutumia sera yako na kuhifadhi sababu;
- kurudi ndani ya bajeti ya majibu ya mtoa huduma;
- kuchakata kazi polepole ya chini kwa async.
Fikiria utoaji wa angalau mara moja. Matukio duplicated na yasiyo ya mpangilio ni tabia ya kawaida ya mfumo uliosambazwa. Hifadhi tukio la mtoa huduma na mpito wa ndani kando ili ukaguzi uweze kujenga upya zote mbili.
Programu inapaswa kuuliza backend yako tu kwa hali yake ya bidhaa au kutumia kituo chako cha kawaida cha realtime. Haipaswi kuonyesha ufunguo wa API wa mtoa huduma ili kurejesha rekodi ya mwisho moja kwa moja.
Jenga mzunguko wa maisha wa skrini ya Flutter inayostahimili
Mifano ya hali za ndani zilizo wazi
Skrini ya uthibitishaji inaweza kutumia:
- tupu;
- kuomba kipindi;
- kuzindua SDK;
- mtiririko wa SDK wazi;
- kupatanisha uamuzi wa backend;
- kusubiri ukaguzi;
- imeidhinishwa;
- imekataliwa;
- kosa linaloweza kurekebishwa;
- imefutwa.
Hifadhi tu kile kilicho salama. Baada ya kifo cha mchakato, uliza backend kama kipindi kinachoendelea au kilichomalizika tayari kipo. Usitegemee boolean ya ndani ya kumbukumbu kuamua kama utaunda jaribio lingine.
Heshimu mzunguko wa maisha wa wijeti
Baada ya simu iliyosubiriwa, angalia mounted kabla ya setState, mazungumzo, au urambazaji. Weka hali ya biashara nje ya UI ya muda mfupi.
Shughulikia usuli na kughairi
Jaribu kubadilisha programu, kufunga skrini, urambazaji, na kukatisha mchakato. Eleza tabia ya kuendelea, kuanzisha upya, na kupatanisha.
Buni urejeshaji wa ruhusa
Eleza hitaji la kamera au NFC. Baada ya kukataliwa kabisa, onyesha mwongozo wa mipangilio au njia mbadala inayoweza kufikiwa.
Usanidi bila uvujaji wa sera
Sehemu ya Flutter DiditConfig iliyothibitishwa nje ya mtandao inaonyesha languageCode, fontFamily, loggingEnabled, showCloseButton, showExitConfirmation, closeOnComplete, defaultDocumentCamera, defaultLivenessCamera, showDocumentCameraSwitchButton, na showLivenessCameraSwitchButton. Sehemu za kamera hutumia CameraLens.front au CameraLens.back; chaguzi zote zimechapwa katika Dart na kuunganishwa na SDK asilia.
Weka sheria tatu:
- wezesha ukataji wa kumbukumbu kwa kina tu kwa maendeleo au ujenzi wa uchunguzi unaodhibitiwa;
- usitumie usanidi wa UI kama mbadala wa sera ya backend;
- jaribu kila lugha inayotumika, fonti maalum, tabia ya kufunga, na sera ya kamera kwenye majukwaa yote mawili, pamoja na tabia ya kurudi nyuma wakati lenzi au mali iliyoombwa haipatikani.
Muundo wa mtiririko wa kazi na chapa ya bidhaa ni mali ya koni au mtiririko wa kazi unaosimamiwa na backend badala ya maze ya bendera za vipengele vya simu. Hiyo huweka maoni ya iOS, Android, wavuti, na msaada yakiwa sawa.
Jaribu ushirikiano
Majaribio ya Dart na wijeti
Funga uzinduzi wa SDK nyuma ya huduma ya programu ili majaribio ya skrini yaweze kurudi:
- imekamilika na kuidhinishwa;
- imekamilika na inasubiri;
- imekamilika na imekataliwa;
- imefutwa;
- kila kosa lililochapwa;
- kosa la jukwaa lisilotarajiwa lililotupwa.
Hakikisha usafishaji wa hali ya upakiaji, hundi zilizowekwa, mwonekano wa kujaribu tena, kuburudisha kwa backend, na kategoria za uchambuzi. Usiweke ishara halisi za kipindi kwenye vifaa.
Majaribio ya ushirikiano asilia
Endesha ujenzi wa debug na release kwenye vifaa halisi vya iOS na Android. Funika:
- ruhusa za mara ya kwanza na zilizopitishwa;
- kamera zinazotumika na zisizotumika;
- lahaja zinazowezeshwa na NFC na zisizo za NFC ambapo zinatumika;
- mwanga mdogo, ukungu, mng'ao, na mwelekeo;
- muunganisho polepole, uliopotea, na uliorejeshwa;
- usuli na uundaji upya wa mchakato;
- kughairi na kuzindua mara kwa mara;
- kuisha kwa kipindi na kuzuia kujaribu tena;
- lugha tofauti, upimaji wa fonti, wasomaji wa skrini, na mwendo uliopunguzwa;
- kusaini programu, kupunguza, na azimio la utegemezi wa uzalishaji.
Emulator ni muhimu kwa majaribio ya hali na makosa lakini haiwezi kuwakilisha kila kamera, NFC, biometri, na hali ya uadilifu wa kifaa.
Majaribio ya backend ya mwisho hadi mwisho
Tumia kesi za sandbox zinazoeleweka kwa kila hali ya mteja iliyorekodiwa. Rudia matukio ya jaribio yaliyosainiwa, tuma marudio yasiyo ya mpangilio, chelewesha ukaguzi, na patanisha baada ya webhook iliyokosa kuigwa. Thibitisha kuwa programu kamwe haitoi ufikiaji kabla ya hali yako ya backend kubadilika.
Kwa muundo wa majaribio ya biometri na mipaka ya mashambulizi, angalia mwongozo wa majaribio ya uhai.
Orodha ya ukaguzi wa usalama na faragha
Kabla ya kutolewa, thibitisha kuwa:
- vitambulisho vya kudumu vya mtoa huduma vipo tu kwenye backend;
- programu inapokea ishara ya kipindi iliyopangwa kupitia kituo kilichothibitishwa;
- ishara na ushahidi hazipo kwenye kumbukumbu, uchambuzi, URL, na ripoti za ajali;
- maombi ya kuunda backend ni idempotent na yameunganishwa na rejeleo la mteja thabiti;
- kukamilika kwa mteja kamwe hakutoi haki moja kwa moja;
- saini ya webhook, upya, marudio, mpangilio, na majaribio ya upatanishi yamepita;
- maelezo ya faragha ya iOS na safari za ruhusa za Android hutumia maandishi wazi ya madhumuni;
- uwezo na lahaja za NFC zinalingana na mtiririko wa kazi na usaini wa kutolewa;
- ukataji wa kumbukumbu wa debug umezimwa kwa uzalishaji;
- uhifadhi, idhini, taarifa ya faragha, kufuta, na njia za msaada zinalingana na jukumu lako na sheria;
- SDK, utegemezi asilia, OS, na utangamano wa kifaa unafuatiliwa baada ya uzinduzi;
- maamuzi ya kurudisha nyuma na kuboresha kwa lazima yana wamiliki.
Makosa ya kawaida ya ushirikiano wa Flutter SDK
Kusafirisha ufunguo wa API kwenye Dart
Programu za simu haziwezi kulinda kitambulisho cha kudumu cha seva. Unda vipindi kwenye backend yako na upitishe ishara iliyopangwa.
Kuamini callback iliyokamilika
Matokeo ya mteja ni hali ya kiolesura cha mtumiaji. Thibitisha hali ya mamlaka na utumie sera kwenye backend.
Kuvumbua mbinu kutoka jukwaa lingine
Flutter haionyeshi kila njia ya SDK asilia chini ya jina moja. Jaribio dhidi ya kifurushi na uangalie chanzo chake cha umma cha Dart kabla ya kuandika msimbo wa ushirikiano.
Kunakili usanidi asilia uliopitwa na wakati
Lahaja za SDK, malengo ya kupeleka, na usanidi wa meneja wa kifurushi hubadilika. Fuata nyaraka za toleo lililosakinishwa na urekodi kwenye orodha yako ya ukaguzi ya kutolewa kwa simu.
Kuchukulia kila kosa kama kukataliwa
Ruhusa, mtandao, kuisha muda, kushindwa kwa API, kughairi, na uamuzi wa mteja unahitaji urejeshaji na uchambuzi tofauti.
Kujaribu tu kwenye emulator
Kamera, NFC, ruhusa, kusaini, na utegemezi asilia unahitaji chanjo ya kifaa halisi na ujenzi wa kutolewa.
Kutumia Didit katika mtiririko wa utambulisho wa Flutter
Didit Flutter SDK imeorodheshwa kama bure. Inaweza kuzindua mtiririko wa kazi ulio na Uthibitishaji wa Kitambulisho, Ugunduzi wa Uhai, na hundi zingine zilizosanidiwa, wakati timu zinasimamia njia za masharti kupitia Didit Workflow Orchestrator.
Viwango vya moduli vilivyochapishwa vinapatikana kwenye ukurasa wa bei. SDK inashughulikia uzoefu wa kunasa asilia; backend yako inabaki kuwajibika kwa uundaji wa kipindi, utunzaji wa matokeo yaliyothibitishwa, hali ya mteja, na maamuzi ya bidhaa.
Maswali Yanayoulizwa Mara kwa Mara
Njia gani inaanza uthibitishaji?
Kwa kipindi cha uzalishaji kilichoundwa na backend, piga DiditSdk.startVerification(sessionToken). SDK pia inaonyesha DiditSdk.startVerificationWithWorkflow(...) kwa hali rahisi zaidi ya ushirikiano wa kitambulisho cha mtiririko wa kazi.
Je, programu ya Flutter inapaswa kuwa na ufunguo wa Didit API?
Hapana. Weka ufunguo wa API kwenye backend. Programu inapaswa kupokea tu ishara ya kipindi iliyopangwa inayohitajika kwa jaribio lake la uthibitishaji.
Je, VerificationCompleted inamaanisha kuidhinishwa?
Si lazima. Hali yake ya kipindi inaweza kuwa imeidhinishwa, inasubiri, au imekataliwa. Tumia matokeo kwa hali ya kiolesura cha haraka na uthibitishe uamuzi wa mamlaka kupitia backend yako.
Kughairi kunapaswa kushughulikiwaje?
Ichukulie kama matokeo tofauti ya mtumiaji. Hifadhi hali ya kipindi cha backend, toa njia wazi ya kuendelea au kuanza upya kulingana na sera, na usitaje kughairi kama udanganyifu au kukataliwa.
Je, Flutter SDK ina njia ya kuanzisha?
API ya umma ya Dart iliyothibitishwa haionyeshi njia tofauti ya kuanzisha. Fuata maagizo ya usanidi asilia ya kifurushi na utumie njia za kuanza zilizorekodiwa.
Je, Flutter inaweza kutumia NFC kwa hati za kitambulisho?
SDK asilia inaweza kusaidia NFC wakati lahaja ya kifurushi iliyochaguliwa, kifaa, usanidi wa iOS au Android, uwezo wa kusaini, na mtiririko wa kazi zote zinaiwezesha. Fuata nyaraka za sasa za kutolewa na ujaribu kwenye vifaa halisi.
Programu inapaswa kufanya nini wakati kesi inakaguliwa?
Onyesha hali ya kusubiri ya ukweli, ruhusu mteja kuondoka salama, na usome hali ya mwisho ya bidhaa kutoka kwa backend yako wakati matokeo yaliyothibitishwa yanapofika.
Marejeo Muhimu
- Nyaraka za Didit Flutter SDK
- Hifadhi ya chanzo ya Didit Flutter SDK
- Nyaraka za Didit session API
- Nyaraka za Didit webhook
- Nyaraka za Flutter: ushirikiano wa jukwaa
- OWASP Mobile Application Security Verification Standard
Ushirikiano thabiti wa Flutter SDK huweka kila mpaka wazi: backend huunda jaribio, programu inazindua mtiririko asilia uliopangwa, matokeo yaliyochapwa husukuma urejeshaji, matukio ya seva yaliyothibitishwa husukuma hali ya mteja, na majaribio ya kifaa halisi yanathibitisha kuwa ruhusa, mzunguko wa maisha, utegemezi asilia, na njia za kushindwa hufanya kazi nje ya onyesho la njia ya furaha.
Makala zinazohusiana
- Jinsi ya Kuongeza Uthibitishaji wa Utambulisho Kwenye Programu Yako ya Flutter (SW)
- Maelezo ya Kiufundi ya Vitambulisho Vilivyogatuliwa (DIDs) vya W3C (SW)
- Uchambuzi wa Habari Hasi: Mchakato, Marekebisho, na Hatari (SW)
- Programu ya KYC: Mwongozo wa Mnunuzi na Vigezo vya Tathmini (SW)
- FIDO2 Yafafanuliwa: WebAuthn, Manenosiri, na Usalama (SW)
- Uzingatiaji wa AML: KYC, CDD, Uchunguzi, na Ufuatiliaji (SW)