---
title: Liveness (biometrisches Selfie)
description: Biometrische Selfie-Aufnahme mit integrierter Liveness-Prüfung, die den erfassten Frame als Base64 und JWT zurückgibt.
canonical: https://developer.unico.io/de/dual-api/developers/sdks-and-tools/ios/capture-flow/capture-types/liveness
locale: de
generated_by: markdown-export
---

Biometrische Selfie-Aufnahme mit integrierter Liveness-Prüfung. Das SDK führt den Benutzer, bis über SmartFrames ein biometrisch valides Bild erfasst wird, und gibt das Bild als Base64 + JWT zurück.

:::secondary[Funktion]
Dieser Aufnahmetyp verwendet die **Liveness**-Funktion. Eine konzeptionelle Übersicht darüber, wie Liveness funktioniert, finden Sie auf der Seite zur Liveness-Funktion.
:::

## Funktionsweise

Das SDK verwaltet die gesamte Aufnahmesitzung:

1. Öffnet die Kamera mit der SmartFrame-Überlagerung.
2. Führt den Benutzer zum Positionieren seines Gesichts im Rahmen.
3. Validiert die Liveness — die Sitzung wird nur abgeschlossen, wenn der Benutzer physisch anwesend ist.
4. Gibt ein `SelfieResult`-Objekt (Alias `ResultCamera`) mit `base64` und `encrypted` (JWT) zurück.

## Kameramodus (intelligente Aufnahme)

Das SDK hat standardmäßig **intelligentes Framing** und **automatische Aufnahme** aktiviert. Konfigurieren Sie den Kameramodus in Ihrem Builder wie folgt:

### Swift

  ```swift
  unicoCheck.setSmartFrame(true)
  unicoCheck.setAutoCapture(true)
  ```

### Objective-C

  ```objectivec
  [unicoCheck setSmartFrame:true];
  [unicoCheck setAutoCapture:true];
  ```

## Eine Liveness-Aufnahme starten

****Schritt 2** — `SelfieCameraDelegate` und `AcessoBioSelfieDelegate` implementieren**

Diese Delegates verwalten die Rückruf-Callbacks für das Ergebnis der Selfie-Aufnahme:

  | Methode | Beschreibung |
  |---|---|
  | `onSuccessSelfie(result)` | Aufnahme erfolgreich — gibt `SelfieResult` mit `base64` (Vorschau) und `encrypted` (JWT für die API) zurück |
  | `onErrorSelfie(errorBio)` | Aufnahme fehlgeschlagen — gibt ein `ErrorBio` mit Code und Beschreibung zurück |

  :::warning[Token-Ablauf]
  Das Intervall zwischen der Erstellung von `encrypted` und der Übermittlung an die API darf **10 Minuten** nicht überschreiten.
  :::

  ### Swift

    ```swift
    class ViewController: UIViewController, AcessoBioManagerDelegate,
      SelfieCameraDelegate, AcessoBioSelfieDelegate {

      func onSuccessSelfie(_ result: SelfieResult!) { }
      func onErrorSelfie(_ errorBio: ErrorBio!) { }
    }
    ```

### Objective-C

    ```objectivec
    // .h
    @interface ViewController: UIViewController <AcessoBioManagerDelegate,
      SelfieCameraDelegate, AcessoBioSelfieDelegate> {
      AcessoBioManager *unicoCheck;
    }

    // .m
    - (void)onSuccessSelfie:(SelfieResult *)result {
        NSLog(@"%@", result.base64);
    }

    - (void)onErrorSelfie:(ErrorBio *)errorBio { }
    ```

****Schritt 3** — `prepareSelfieCamera` und `open` aufrufen**

Rufen Sie `prepareSelfieCamera` mit der SDK-Konfiguration auf. Wenn die Kamera bereit ist, wird das Ereignis `onCameraReady` mit einem `AcessoBioCameraOpenerDelegate` ausgelöst — öffnen Sie die Kamera über die Methode `open()`:

  - `onCameraReady(cameraOpener)` — Kamera ist bereit; rufen Sie `open(self)` auf.
  - `onCameraFailed(message)` — Kameravorbereitung fehlgeschlagen (`ErrorPrepare` ist eine Erweiterung von `ErrorBio`).

  ### Swift

    ```swift
    @IBAction func openCamera(_ sender: Any) {
      unicoCheck.build().prepareSelfieCamera(self, config: YourUnicoConfigClass())
    }

    func onCameraReady(_ cameraOpener: AcessoBioCameraOpenerDelegate!) {
      cameraOpener.open(self)
    }

    func onCameraFailed(_ message: ErrorPrepare!) { }
    ```

### Objective-C

    ```objectivec
    - (IBAction)openCamera:(UIButton *)sender {
        [[unicoCheck build] prepareSelfieCamera:self config:[YourUnicoConfigClass new]];
    }

    - (void)onCameraReady:(id)cameraOpener {
        [cameraOpener open:self];
    }

    - (void)onCameraFailed:(ErrorPrepare *)message { }
    ```

Für die vollständige Ergebnisbehandlung siehe [Ergebnis empfangen](/developers/sdks-and-tools/ios/capture-flow/receiving-the-result).