Guia Rápido de Uso

Guia essencial para iniciar o uso do SDK de forma simples e objetiva.

1. ✅Requisitos de Compatibilidade

  • React Native ≥ 0.79
  • Android API ≥ 26
  • iOS ≥ 12.0
  • TypeScript ≥ 4.0 (recomendado)
  • Compatível com Expo ≥ 53

2. ✨Funcionalidades

  • 🛡️Verificação de liveness com FaceTec e iProov;
  • 🔒 Gerenciamento automático de permissões;
  • 🎨 Suporte completo a temas personalizados;
  • 💻 Interface TypeScript com tipagem completa;
  • 📱 Suporte para Android e iOS;
  • 🚀 Integração com TurboModules para performance otimizada;
  • 🔄 Callbacks de sucesso e erro;
  • 🤝 Compatível com React Native 0.79+.

3.📋Permissões

  • Câmera: Utilizada para a captura biométrica e validação de documentos (Prova de Vida).
  • Internet: Requisitada para a comunicação com o backend e o processamento seguro dos dados.

4. 📦Instalação

npm install @certiface/sdk

Ou

yarn add @certiface/sdk

5. ⚙️Configuração

5.1. Android

  1. Configure os repositórios necessários no android/build.gradle:
allprojects {
    repositories {
        google()
        mavenCentral()
        maven {
            url 'https://raw.githubusercontent.com/oititec/android-oiti-sdk-versions/master'
        }
    }
}
  1. Adicione as permissões no android/app/src/main/AndroidManifest.xml:
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.INTERNET" />

5.2. iOS

  1. Configure as fontes do CocoaPods no ios/Podfile:
source 'https://github.com/oititec/ios-artifactory.git'
source 'https://github.com/CocoaPods/Specs.git'
  1. Adicione as permissões no ios/YourApp/Info.plist:
<key>NSCameraUsageDescription</key>
<string>Precisamos acessar sua câmera para verificação de identidade</string>
  1. Execute a instalação dos pods:
cd ios && pod install

6. 🚀Uso Básico

6.1. Importação

import {
  startJourney,
  checkCameraPermission,
  requestCameraPermission,
  LivenessProvider,
  Environment,
  type OitiTheme,
} from '@certiface/sdk';

6.2. Exemplo Simples

import React from 'react';
import { Button, Alert } from 'react-native';
import { startJourney, Environment, LivenessProvider } from '@certiface/sdk';

export default function App() {
  const handleVerification = async () => {
    try {
      const appKey = 'your-app-key-here';
      const result = await startJourney(
        appKey,
        Environment.HML,
        LivenessProvider.FACETEC,
        false
      );

      Alert.alert('Sucesso!', `Verificação concluída: ${result.codID}`);
    } catch (error) {
      Alert.alert('Erro', `Falha: ${error.message}`);
    }
  };

  return <Button title="Iniciar Verificação" onPress={handleVerification} />;
}

6.3. Resultado esperado

Quando bem-sucedido, o método startJourney retorna um objeto LivenessResult:

{
  valid: true,
  codID: "abc123def456",
  protocol: "20231105-001"
}

7. 🧪Ambiente de Testes

Durante o desenvolvimento, utilize o ambiente hml com AppKeys fornecidas pela equipe CertiFace.