---
description: >-
  Nesta seção, você encontrará uma visão geral sobre o funcionamento do SDK da
  plataforma Unico IDCloud
---

# Visão Geral

***



## Introdução <a href="#duvidas" id="duvidas"></a>

***

Os SDK's da plataforma Unico IDCloud tem como objetivo potencializar a segurança do seu negócio e dos seus clientes, permitindo inclusive personalizar a experiência de uso aplicando a identidade visual da sua marca. Os SDKs abstraem a complexidade de manipulação da câmera do dispositivo dos usuários e a captura de imagens (Selfie e documento), facilitando a vida do desenvolvedor e reduzindo o tempo de entrega do produto final. Outras vantagens:

* **Prova de vida**: Os SDK's são utilizados em conjunto com a capacidade de [<mark style="color:blue;">**Prova de vida**</mark>](https://unicoidtech.gitbook.io/idcloud/sobre-o-idcloud/capacidades#prova-de-vida) para garantir que o usuário esteja ao vivo no momento de captura da selfie;
* **Precisão na captura de imagens**: Os SDKs possuem recursos que auxiliam o usuário a obter fotos biometricamente válidas, reduzindo o drop das imagens quando comparados a captura realizada pelas câmeras padrões dos dispositivos. São adicionados SmartFrames, “elementos chave“ que se ajustam automaticamente à silhueta e proporção da tela do usuário permitindo uma melhor captura da imagem;
* **Segurança reforçada**: Recursos de criptografia e segurança contra injection de imagens, possuindo também funcionalidades que previnem fraudes adaptadas a diferentes modos de câmera. Camadas de segurança que funcionam de forma complementar, tanto a nível da aplicação quanto em relação aos dados que são trafegados entre os SDKs e o backend. O SDK também inclui ofuscação de código, bloqueio de emulador e checagem de bundle do aplicativo que a está executando.

A captura das imagens por meio dos SDKs é apenas a primeira parte de sua jornada. Sendo assim, é de extrema importância que entenda os conceitos básicos e o funcionamento das APIs do motor biométrico. Para mais informações, veja sobre a API REST do [<mark style="color:blue;">**by Client**</mark>](https://unicoidtech.gitbook.io/idcloud/integracao/integracao-by-client/visao-geral)<mark style="color:blue;">**.**</mark>

{% hint style="info" %}
#### Atualizações dos SDKs

É importante ressaltar que para o bom funcionamento das nossas soluções, com o máximo de segurança e estabilidade, **é imprescindível que o SDK esteja devidamente atualizado**. É responsabilidade do cliente acompanhar e garantir que está utilizando a versão mais recente do SDK disponível em nossos servidores.

A Unico não se responsabiliza por problemas decorrentes de falta de atualização do SDK na operação do cliente. \[[<mark style="color:blue;">**Saiba mais sobre nossa Política de Atualização da SDK aqui**</mark>](https://unicoidtech.gitbook.io/idcloud/integracao/sdk/politica-de-atualizacoes)]
{% endhint %}



## Diagrama de Funcionamento

***

O SDK (Client-side) é responsável por simplificar sua integração com a plataforma Unico IDCloud, absorvendo toda a complexidade da manipulação da câmera e captura de imagens.

Se a captura for feita com sucesso, o SDK retorna um objeto que deve ser enviado para a API do motor biométrico, completando assim a validação biométrica, conforme diagrama exemplificado abaixo:

<figure><img src="https://2710429654-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRYAjI6cvMRaBuExcHREj%2Fuploads%2FyGFBCnAhXrNumtMdeAKq%2Fimage.png?alt=media&#x26;token=0ae2ac4b-b41a-4b12-92de-df00dab2cdce" alt=""><figcaption></figcaption></figure>

{% stepper %}
{% step %}
#### O usuário acessa sua aplicação
{% endstep %}

{% step %}
#### Através do SDK, sua aplicação solicita o frame para captura (de acordo como foi configurada a sua aplicação)
{% endstep %}

{% step %}
#### Sua aplicação renderiza o frame para captura em um placeholder pré estabelecido
{% endstep %}

{% step %}
#### O SDK captura a imagem, gerando um token JWT que será retornado para a sua aplicação
{% endstep %}

{% step %}
#### Sua aplicação repassa o `JWT` para seu servidor
{% endstep %}

{% step %}
#### Seu servidor interage com as APIs do motor biométrico para analisar a imagem (_através das APIs REST do_ [_<mark style="color:blue;">**by Client**</mark>_](https://unicoidtech.gitbook.io/idcloud/integracao/integracao-by-client/apis/createprocess))
{% endstep %}

{% step %}
#### Os servidores retornam a resposta do motor biométrico, que deve ser enviada para sua aplicação
{% endstep %}

{% step %}
#### Sua aplicação disponibiliza uma resposta ao usuário
{% endstep %}
{% endstepper %}



## Requisitos suportados por cada Client SDK <a href="#requisitos-suportados-por-cada-client-sdk" id="requisitos-suportados-por-cada-client-sdk"></a>

***

A seguir, informações e requisitos necessários, oficialmente suportados por cada Client SDK da Unico:

| SDK Android                                                                                                                                                                                                                                                                                                                                                                                                                                | SDK iOS                                                                                                                                                                                                                                                                                                                   | SDK Web                                                                                                                                                                                 |
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| <ul><li><strong>Plugins</strong>: Flutter</li></ul><ul><li><strong>Linguagens</strong>: Java/Kotlin</li><li><strong>Android</strong><a href="https://developers.unico.io/docs/check/SDK/android/overview#android"><strong>​</strong></a><strong>:</strong> 5.0 (API 21)</li><li><strong>Kotlin</strong><a href="https://developers.unico.io/docs/check/SDK/android/overview#kotlin"><strong>​</strong></a><strong>:</strong> 1.6</li></ul> | <p></p><ul><li><strong>Xcode</strong>: >= 15.0</li></ul><ul><li><strong>Plugins</strong>: Flutter</li></ul><ul><li><strong>Linguagens</strong>: swift/objective-c</li></ul><ul><li><strong>iOS</strong>: >= 11</li></ul><ul><li><strong>Gerenciador de dependência</strong>: Cocoapods ou Swift Package Manager</li></ul> | <p></p><ul><li><strong>Frameworks</strong>: React JS, Angular, Next JS, Vue JS e JS Vanilla.</li></ul><ul><li><strong>Versão Javascript</strong>: ECMAScript 5 ou superiores.</li></ul> |

{% hint style="danger" %}
#### Nosso suporte é restrito a aplicativos desenvolvidos diretamente nas **plataformas nativas** Android e iOS, utilizando seus respectivos módulos nativos, além do framework Flutter (se a implementação for utilizando nosso plugin). No momento, não oferecemos suporte para aplicativos desenvolvidos em **frameworks híbridos**, como React Native, Ionic ou outras tecnologias de desenvolvimento multiplataforma.
{% endhint %}





## Versionamento dos SDKs

***

Os SDKs da plataforma Unico IDCloud possuem um **versionamento semântico**, sendo assim, há numeração de versão "**MAJOR.MINOR.PATCH**",  descrita da seguinte forma:

* **Versão Maior(MAJOR)**: Quando fizer mudanças incompatíveis na API;
* **Versão Menor(MINOR)**: Quando adicionar funcionalidades mantendo compatibilidade;
* **Versão de Correção (PATCH)**: Quando corrigir falhas mantendo compatibilidade.

***



#### Dúvidas?​ <a href="#duvidas" id="duvidas"></a>

Não encontrou algo ou ainda precisa de ajuda? Se já é um cliente ou parceiro, pode entrar em contato através da [<mark style="color:blue;">Central de Ajuda</mark>](https://empresas.unico.io/hc/pt-br/p/atendimentoparaempresas).
