---
title: التحقق من الحيوية (صورة شخصية بيومترية)
canonical: https://developer.unico.io/ar/dual-api/developers/sdks-and-tools/flutter/capture-flow/capture-types/liveness
locale: ar
generated_by: markdown-export
---

التقاط صورة شخصية بيومترية مع التحقق المدمج من الحيوية. يرشد SDK المستخدم حتى يتم الحصول على إطار صالح بيومترياً عبر SmartFrames ويُعيد الصورة بصيغة Base64 وJWT.

:::secondary[القدرة]
يستخدم هذا النوع من الالتقاط قدرة **التحقق من الحيوية**. للاطلاع على نظرة عامة مفاهيمية حول كيفية عمل التحقق من الحيوية، راجع صفحة قدرة التحقق من الحيوية.
:::

## How it works

يُفوِّض المكوِّن الإضافي إلى SDKs الأصلية الأساسية:

1. يفتح المكوِّن الإضافي الكاميرا (Android أو iOS) مع تراكب SmartFrame.
2. يرشد SDK الأصلي المستخدم لوضع وجهه داخل الإطار.
3. يتحقق من الحيوية — تكتمل الجلسة فقط عندما يكون المستخدم حاضراً فعلياً.
4. يُعيد كائن `ResultCamera` مع `base64` و`encrypted` (JWT) عبر قناة المنصة.

## Camera mode (smart capture)

يمتلك SDK **الإطارة الذكية** و**الالتقاط التلقائي** مفعَّلَين بشكل افتراضي. قم بتهيئة وضع الكاميرا في المنشئ الخاص بك على النحو التالي:

```dart
UnicoCheckCameraOpener _opener = _unicoCheck
    .setAutoCapture(autoCapture: true)
    .setSmartFrame(smartFrame: true)
    .build();
```

## Starting a liveness capture

****الخطوة 2** — تنفيذ مستمعات الصورة الشخصية على `UnicoSelfie`**

أضف استدعاءات الصورة الشخصية إلى فئة الحالة الخاصة بك:

  | الأسلوب | الوصف |
  |---|---|
  | `onSuccessSelfie(ResultCamera result)` | نجح الالتقاط — يُعيد `ResultCamera` مع `base64` (معاينة) و`encrypted` (JWT لواجهة برمجة التطبيقات) |
  | `onErrorSelfie(UnicoError error)` | فشل الالتقاط — يُعيد `UnicoError` مع الرمز والوصف |

  :::warning[انتهاء صلاحية الرمز]
  يجب ألا تتجاوز الفترة الزمنية بين إنشاء `encrypted` وإرساله إلى واجهة برمجة التطبيقات **10 دقائق**.
  :::

  ```dart
  class _MyHomePageState extends State<MyHomePage>
      implements UnicoSelfie {

    @override
    void onSuccessSelfie(ResultCamera result) { }

    @override
    void onErrorSelfie(UnicoError error) { }

  }
  ```

****الخطوة 3** — استدعاء `openCameraSelfie`**

يفتح أسلوب `openCameraSelfie` الكاميرا. يأخذ تنفيذ مستمع `UnicoSelfie`:

  ```dart
  _opener.openCameraSelfie(listener: this);
  ```

## Monitoring data collection

يوفر أسلوب `openCameraSelfie` تحميلاً زائداً يقبل بيانات وصفية عبر `UnicoCheckPrepareInfo` للمساعدة في تحديد جلسة المستخدم والتدفق:

- `externalUserId` (String، **مطلوب**) — معرِّف المستخدم في نظامك. يُجزَّأ تلقائياً باستخدام SHA-256 قبل الإرسال.
- `useCase` (String، اختياري) — معرِّف للسياق أو التدفق الجاري تشغيله حالياً. يُرسَل بنص عادي.

```dart
_opener.openCameraSelfie(
  listener: this,
  prepareInfo: UnicoCheckPrepareInfo(
    externalUserId: 'external_user_id',
    useCase: 'use_case', // optional
  ),
);
```

للاطلاع على المعالجة الكاملة للنتيجة، راجع [استقبال النتيجة](/developers/sdks-and-tools/flutter/capture-flow/receiving-the-result).