Guia Rápido de Uso

✅ Requisitos de Compatibilidade

  • Target mínimo: iOS 13.0

  • Versão do Swift: 5+

  • Linguagem base: Swift (interoperável com Objective-C)

  • Gerenciador de dependência: CocoaPods

  • Ambientes suportados:

    • hml: Homologação
    • prd: Produção

⚙️ Instalação

Passo 1: Caso você não possua um arquivo Podfile no seu projeto, basta executar o comando abaixo na raiz do projeto que um novo arquivo desse será criado:

pod init

Passo 2: No início do Podfile, inclua a linha abaixo:

source 'https://github.com/oititec/ios-artifactory.git'

Passo 3: Em seguida, adicione as dependências necessárias:

pod 'OitiSDK', '~> x.y.z'

Substitua x.y.z pela versão mais recente fornecida pela Oiti.

Passo 4: Execute o comando de instalação dos pods:

pod install

🔌 Criação do provedor de Liveness

O OitiSDK utiliza o padrão de fábrica para criar instâncias específicas de cada provedor de Liveness:

let manager = OitiSDKFactory.createLivenessManager(for: .iproov)

✅ Provedores Disponíveis

ProvedorIdentificador EnumSuporte
IProovLivenessProvider.iproov✅ Suporte Atual
[Novo Provedor]em breve🔜 Planejado

🧩 Provedor: IProov

Este é o provedor atualmente integrado ao SDK. Ele oferece uma jornada de verificação baseada em luz e detecção passiva.

🚀 Execução da Jornada

Após criar o LivenessManagerOptions fornecendo a AppKey e o ambiente de execução, inicie a jornada com:


// MARK: - Implementação

final class ContentViewController: UIViewController {
    func executeLiveness() {
        let options = LivenessManagerOptions
            .builder(appKey: "APP_KEY", environment: .hml)
            .build()

        let manager = OitiSDKFactory.createLivenessManager(for: .iproov)
        manager.start(at: self, options: options, callback: self)
    }
}

extension ContentViewController: LivenessCallback {
    func onSuccess(_ result: LivenessResult) {
        // Código ...
    }

    func onError(_ error: LivenessError) {
        // Código ...
    }

    func onCanceled() {
        // Código ...
    }
}
  

📱 Fluxo de Telas

📝 Tela Inicial/Instruções (Pré-Liveness)

Tela que apresenta as instruções iniciais ao usuário antes do início do processo de verificação facial. Inclui:

  • Explicação do processo de liveness
  • Requisitos de iluminação e posicionamento
  • Botão de início do processo

📷 Tela de Permissão de Câmera

Exibida quando o usuário ainda não concedeu permissão de acesso à câmera. Contém:

  • Explicação da necessidade da permissão
  • Botão para conceder acesso
  • Redirecionamento para as configurações do dispositivo caso a permissão tenha sido negada anteriormente

🙂 Tela de Liveness

Exibida durante a coleta e análise do liveness. Mostra:

  • Feedback visual em tempo real do enquadramento facial
  • Instruções dinâmicas (ex: "Mantenha o rosto no quadro")

🔄 Tela de Processamento

Exibida durante o processamento do liveness coletado. Mostra:

  • Barra de progresso ou indicador de processamento

🧪 Ambiente de Testes

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

⚠️

Evite o uso do ambiente de produção para testes manuais.