> ## Documentation Index
> Fetch the complete documentation index at: https://docs-platform.services-valid.com.br/llms.txt
> Use this file to discover all available pages before exploring further.

# Implementação

> Como implementar a verificação de liveness na sua aplicação Android

## Uso Básico

Após [instalar e configurar](/plataforma/liveness/hub/sdk/android/installation) o SDK, você pode iniciar a verificação de liveness com poucas linhas de código.

### Exemplo Completo de Activity

```kotlin theme={"theme":"catppuccin-latte"}
package com.example.myapp

import android.os.Bundle
import android.widget.Button
import android.widget.Toast
import androidx.appcompat.app.AppCompatActivity
import androidx.lifecycle.lifecycleScope
import com.valid.entry.LivenessHubSDK
import com.valid.entry.models.LivenessHubRiskLevel
import kotlinx.coroutines.launch

class MainActivity : AppCompatActivity() {

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)

        findViewById<Button>(R.id.btnStartLiveness).setOnClickListener {
            startLivenessVerification()
        }
    }

    private fun startLivenessVerification() {
        lifecycleScope.launch {
            try {
                // Start verification with medium risk level
                val result = LivenessHubSDK.startLivenessCheck(
                    activity = this@MainActivity,
                    riskLevel = LivenessHubRiskLevel.LIVENESS_RISK_MEDIUM
                )

                result.onSuccess {
                    Toast.makeText(
                        this@MainActivity,
                        "✅ Verification completed successfully!",
                        Toast.LENGTH_LONG
                    ).show()
                    onLivenessSuccess()

                }.onFailure { error ->
                    Toast.makeText(
                        this@MainActivity,
                        "❌ Error: ${error.message}",
                        Toast.LENGTH_LONG
                    ).show()
                    onLivenessFailure(error)
                }

            } catch (e: Exception) {
                Toast.makeText(
                    this@MainActivity,
                    "Unexpected error: ${e.message}",
                    Toast.LENGTH_LONG
                ).show()
            }
        }
    }

    private fun onLivenessSuccess() {
        // Navigate to next screen or continue flow
    }

    private fun onLivenessFailure(error: Throwable) {
        // Handle error or allow retry
    }
}
```

## Níveis de Risco

O SDK oferece três níveis de segurança para a detecção de liveness:

```kotlin theme={"theme":"catppuccin-latte"}
enum class LivenessHubRiskLevel {
    LIVENESS_RISK_LOW,      // Para verificações simples
    LIVENESS_RISK_MEDIUM,   // Recomendado para a maioria dos casos
    LIVENESS_RISK_HIGH      // Para transações financeiras ou dados sensíveis
}
```

| Nível                  | Uso Recomendado      | Complexidade                   |
| ---------------------- | -------------------- | ------------------------------ |
| `LIVENESS_RISK_LOW`    | Verificações simples | Mais rápido, menos desafios    |
| `LIVENESS_RISK_MEDIUM` | Maioria dos casos    | Equilíbrio ideal               |
| `LIVENESS_RISK_HIGH`   | Transações críticas  | Mais desafios, maior segurança |

## API Pública

### Resumo das Classes Principais

| Classe                 | Tipo       | Descrição                         |
| ---------------------- | ---------- | --------------------------------- |
| `LivenessHubSDK`       | object     | Ponto de entrada principal do SDK |
| `LivenessHubConfig`    | data class | Configuração do SDK               |
| `LivenessHubRiskLevel` | enum       | Níveis de risco para detecção     |

### Referência Rápida

```kotlin theme={"theme":"catppuccin-latte"}
// Inicialização (na Application)
LivenessHubSDK.init(applicationContext: Context, config: LivenessHubConfig)

// Verificação de Liveness (na Activity)
suspend fun startLivenessCheck(
    activity: Activity,
    riskLevel: LivenessHubRiskLevel
): Result<Unit>
```

## Próximos Passos

<CardGroup cols={2}>
  <Card title="Customização" icon="palette" href="/plataforma/liveness/hub/sdk/android/customization">
    Personalize idiomas e textos
  </Card>

  <Card title="Troubleshooting" icon="wrench" href="/plataforma/liveness/hub/sdk/android/troubleshooting">
    Resolução de problemas comuns
  </Card>
</CardGroup>
