# SDKs mòbils i web

Source: https://help.didit.me/ca/integration/mobile-sdks
Updated: 2026-10-12

Els SDKs per a iOS, Android, React Native i Flutter integren el flux dins de la teva app i són l'única via compatible amb NFC; els web l'incrusten al frontend.

Hi ha SDKs natius per a **iOS, Android, React Native i Flutter**; els SDKs web
incrusten el flux al teu frontend. Fes servir un SDK natiu quan necessitis **NFC**
o el millor comportament de càmera - un WebView no et dona cap de les dues coses.
Els resultats sempre arriben per webhook, no des de l'SDK.

## Per què un SDK i no una redirecció

[Video: La guia completa d’integració - Didit Academy](https://www.youtube.com/watch?v=fX03-WEu_EI)

Una redirecció allotjada és la que implica menys feina i, per a la majoria de fluxos, funciona prou bé. Un SDK val la pena quan:

- **Necessites NFC.** El xip d'un passaport o un document d'identitat no es pot llegir des d'una pàgina de navegador. Un SDK natiu és l'única via. Vegeu [verificació amb xip NFC](https://help.didit.me/ca/documents-coverage/nfc-chip-verification).
- **No vols que l'usuari surti de la teva app.** Una redirecció d'anada i tornada és un punt real d'abandonament en mòbil.
- **Vols el millor comportament de càmera.** L'accés natiu a la càmera és més fiable que el d'un navegador, especialment en dispositius més antics.

## Què hi ha disponible

[Video: Tria l'SDK de Didit adequat - Didit Academy](https://www.youtube.com/watch?v=qHada8ZY24Q&t=14)

| Plataforma | Notes |
|---|---|
| **iOS** | Es distribueix com a XCFramework |
| **Android** | Es distribueix via Maven |
| **React Native** | Encapsula els mòduls natius; compatible amb la New Architecture |
| **Flutter** | Encapsula els mòduls natius |
| **JavaScript / web** | Incrusta el flux allotjat al teu frontend web |
| **Iframe in-context** | Renderitza el flux dins de la teva pàgina en lloc de redirigir |

![La pàgina Integrate a la consola de Didit amb els enllaços a l'SDK i a la documentació](https://help.didit.me/screenshots/integrate-light.webp)

*Tots els SDKs comencen des de la mateixa pàgina que l'API.*

iOS admet Swift Package Manager i CocoaPods; afegeix els permisos de càmera i NFC a `Info.plist` quan calgui. Android es distribueix per Maven. React Native admet Expo amb una compilació de desenvolupament que inclogui els mòduls natius, no amb Expo Go.

Els requisits de versió i els mínims de plataforma canvien amb cada llançament, així que consulta la [documentació actual de l'SDK](https://docs.didit.me/integration/native-sdks/overview) en lloc d'una instantània d'aquesta pàgina d'ajuda - i si fas servir una versió concreta d'un framework (una versió específica d'Expo, per exemple), confirma la compatibilitat amb el teu contacte a Didit abans de comprometre-t'hi dins d'un sprint.

## Un WebView no és un SDK natiu

Encapsular el flux web allotjat dins d'un WebView sembla que et doni una experiència dins de l'app. El que et dona és l'aparença d'una:

- **Sense NFC.** El xip continua sense poder-se llegir.
- **Els permisos de càmera són més complicats.** L'accés a la càmera d'un WebView depèn de la configuració de l'app amfitriona, i configurar-ho malament produeix exactament els reports de "la càmera mai s'ha obert" que es tracten a [com solucionar problemes de prova de vida i coincidència facial](https://help.didit.me/ca/liveness-biometrics/liveness-and-face-match-issues).
- **La llengua és la de l'app, no la de l'usuari.** Un WebView informa de la llengua de l'app amfitriona, així que passa `language` explícitament en crear la sessió. Vegeu [com configurar la llengua de verificació](https://help.didit.me/ca/workflows/verification-languages).

Si ja et prens la molèstia de fer un flux dins de l'app, fes servir l'SDK natiu.

## Els resultats sempre venen dels webhooks

Això sol confondre la gent: l'SDK indica a la teva app que l'usuari ha acabat el flux. **No** és la font autoritativa de la decisió de verificació.

La decisió es genera al servidor un cop s'han executat les comprovacions, i t'arriba per [webhook](https://help.didit.me/ca/integration/webhooks-basics). No concedeixis mai accés basant-te només en la crida de finalització de l'SDK - un senyal del costat del client es pot falsificar trivialment, i les comprovacions poden ni tan sols haver acabat quan es dispara.

> **Warning:** Tractar "l'SDK ha dit que ha acabat" com "l'usuari està verificat" és l'error més
> greu possible en una integració mòbil. Confirma-ho al teu servidor, a partir del
> webhook o de l'endpoint de decisió, abans de desbloquejar res.

## Una única app de consumidor, o la teva pròpia?

No hi ha cap app de consumidor separada de Didit a la qual una sessió allotjada traspassi els usuaris per a un pas com el NFC. Si vols tenir-ho tot - NFC i sense NFC - dins d'una única experiència d'app, aquesta app és **la teva**, amb l'SDK incrustat a dins.

## Distribució i conflictes de dependències

La integració de l'SDK natiu ocasionalment xoca amb altres dependències d'una app amfitriona - una biblioteca transitiva compartida, o un subspec que fixa una versió que una altra cosa també fixa. Si et trobes un cas així, és un problema concret i reproduïble que val la pena reportar amb el teu manifest de dependències, en lloc de buscar-hi una solució alternativa fixant alguna cosa antiga: l'arranjament sol pertànyer a l'SDK.

## Provar en un dispositiu

Canvia a **Sandbox** amb el selector sota el nom de l’aplicació, crea-hi una clau d’API i utilitza-la. Les comprovacions se simulen, no es factura res i pots triar el resultat.

[com provar en sandbox](https://help.didit.me/ca/getting-started/sandbox-and-testing)
