---
title: التهيئة
canonical: https://developer.unico.io/ar/dual-api/developers/sdks-and-tools/flutter/initialization
locale: ar
generated_by: markdown-export
---

## Where to initialize

قم بتهيئة حزمة SDK عند **تحميل التطبيق** — عادةً في `main()` أو في `initState()` من واجهة الإدخال الخاصة بك. راجع [أفضل الممارسات](/developers/sdks-and-tools/flutter/resources) للاطلاع على سبب ضرورة **عدم** التهيئة عند النقر على زر الالتقاط.

## Embedding credentials

أنشئ كائن `UnicoConfig` لكل منصة باستخدام بيانات الاعتماد المقدمة من فريق Onboarding:

```dart
final _configIos = UnicoConfig(
    getBundleIdentifier: "Your BundleIdentifier Ios",
    getHostKey: "Your HostKey Ios");

final _configAndroid = UnicoConfig(
    getBundleIdentifier: "Your BundleIdentifier Android",
    getHostKey: "Your HostKey Android");

void initUnicoCamera() {
  // UnicoCheck() يُعيد UnicoCheckBuilder — استخدمه لتسلسل الإعدادات واستدعاء build()
  _unicoCheck = new UnicoCheck(
      listener: this,
      unicoConfigIos: _configIos,
      unicoConfigAndroid: _configAndroid);
}
```

## Implement UnicoListener

قم بتطبيق واجهة `UnicoListener` في فئة حالة الواجهة الخاصة بك وتجاوز أساليب رد الاتصال بمنطق أعمال تطبيقك:

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

  late UnicoCheckBuilder _unicoCheck;

  @override
  void onErrorUnico(UnicoError error) {}

  @override
  void onUserClosedCameraManually() {}

  @override
  void onSystemChangedTypeCameraTimeoutFaceInference() {}

  @override
  void onSystemClosedCameraTimeoutSession() {}
}
```

:::warning[أساليب المستمع الإلزامية]
يجب إنشاء جميع أساليب المستمع الأربعة المذكورة أعلاه في مشروعك (حتى بدون أي منطق). وإلا، فلن يُترجَم المشروع بنجاح.
:::

## Environment selection

يتم اختيار البيئة أثناء التهيئة. استخدم تعداد `UnicoEnvironment`:

- `UnicoEnvironment.PROD` — بيئة الإنتاج
- `UnicoEnvironment.UAT` — بيئة التدريج

```dart
_unicoCheck.setEnvironment(unicoEnvironment: UnicoEnvironment.UAT);
```

للاطلاع على القائمة الكاملة لأنواع البيئات المتاحة، راجع [مرجع API > API التهيئة](/developers/sdks-and-tools/flutter/api-reference/initialization-api).

## Lifecycle

تستغرق مصادقة حزمة SDK مع الخلفية بضع ثوانٍ. **قم بالتهيئة مبكرًا** (عند البدء البارد للتطبيق)، وليس عندما ينقر المستخدم على زر الالتقاط — وإلا سيشعر المستخدم بتأخير بين النقر وفتح الكاميرا.