---
title: Liveness (selfie biometrik)
canonical: https://developer.unico.io/id/dual-api/developers/sdks-and-tools/android/capture-flow/capture-types/liveness
locale: id
generated_by: markdown-export
---

Pengambilan selfie biometrik dengan verifikasi liveness bawaan. SDK memandu pengguna hingga frame yang valid secara biometrik diperoleh melalui SmartFrames dan mengembalikan gambar dalam format Base64 + JWT.

:::secondary[Kapabilitas]
Jenis pengambilan gambar ini menggunakan kemampuan **Liveness**. Untuk gambaran konseptual tentang cara kerja Liveness, lihat halaman kemampuan Liveness.
:::

## Cara kerjanya

SDK mengelola sesi pengambilan gambar secara penuh:

1. Membuka kamera dengan overlay SmartFrame.
2. Memandu pengguna untuk memposisikan wajah mereka di dalam bingkai.
3. Memvalidasi liveness — sesi hanya selesai ketika pengguna hadir secara fisik.
4. Mengembalikan objek `ResultCamera` dengan `base64` dan `encrypted` (JWT).

## Memulai pengambilan liveness

****Langkah 2** — Implementasikan `iAcessoBioSelfie`**

`iAcessoBioSelfie` menangani callback hasil pengambilan selfie:

  | Metode | Deskripsi |
  |---|---|
  | `onSuccessSelfie(result)` | Pengambilan berhasil — mengembalikan `ResultCamera` dengan `base64` (pratinjau) dan `encrypted` (JWT untuk API) |
  | `onErrorSelfie(errorBio)` | Pengambilan gagal — mengembalikan `ErrorBio` dengan kode dan deskripsi |

  :::warning[Kedaluwarsa token]
  Interval antara pembuatan `encrypted` dan pengirimannya ke API tidak boleh melebihi **10 menit**.
  :::

  ### Kotlin

    ```kotlin
    val selfieListener = object : iAcessoBioSelfie {
      override fun onSuccessSelfie(result: ResultCamera?) { }
      override fun onErrorSelfie(errorBio: ErrorBio?) { }
    }
    ```

### Java

    ```java
    iAcessoBioSelfie selfieListener = new iAcessoBioSelfie() {
      @Override
      public void onSuccessSelfie(ResultCamera result) { }

      @Override
      public void onErrorSelfie(ErrorBio errorBio) { }
    };
    ```

****Langkah 3** — Panggil `prepareCamera`**

Setelah `unicoCheckCamera` diinisialisasi dan kedua listener diimplementasikan, panggil `prepareCamera` dengan meneruskan konfigurasi SDK dan `SelfieCameraListener`:

  - `onCameraReady` — kamera siap; panggil `open` dengan meneruskan `selfieListener` dari Langkah 2.
  - `onCameraFailed` — persiapan kamera gagal; tangani pesan kesalahan.

  ### Kotlin

    ```kotlin
    unicoCheckCamera
      .prepareCamera(UnicoConfig(), object : SelfieCameraListener {
        override fun onCameraReady(cameraOpener: UnicoCheckCameraOpener.Selfie?) {
          cameraOpener?.open(selfieListener)
        }
        override fun onCameraFailed(message: String?) { }
      })
    ```

### Java

    ```java
    unicoCheckCamera
      .prepareCamera(new UnicoConfig(), new SelfieCameraListener() {
        @Override
        public void onCameraReady(UnicoCheckCameraOpener.Selfie cameraOpener) {
          cameraOpener.open(selfieListener);
        }

        @Override
        public void onCameraFailed(String message) { }
      });
    ```

Untuk penanganan hasil selengkapnya, lihat [Menerima hasil](/developers/sdks-and-tools/android/capture-flow/receiving-the-result).