خيارات إضافية لتثبيت Unity

بدلاً من تنزيل ملف .zip كبير يحتوي على جميع .unitypackage الملفات لكل من ‎ .NET 3.X و‎ .NET 4.X، يمكنك تنزيل حِزم فردية من موقع Google APIs for Unity الإلكتروني.

يوفّر الموقع الإلكتروني ما يلي:

  • ملفات .unitypackage فردية بتنسيق ‎.NET 4.X لاستيرادها كحِزم مواد عرض
  • أرشيفات .tgz فردية لاستيرادها باستخدام "مدير حِزم Unity"

يكون ذلك مفيدًا بشكل خاص عندما يستخدم تطبيقك منتجًا واحدًا من Firebase، لأنّ ملفات .unitypackage الفردية تحتوي على جميع الملحقات المطلوبة، ويتم إدراج ملفات .tgz بجانب ملفات .tgz ذات الصلة التي تعتمد عليها.

تقدّم هذه الصفحة تعليمات تتعلّق بـ Unity Package Manager، لذا ننصحك بالاطّلاع على مستندات Unity للتعرّف على الأداة.

استيراد حِزم Firebase كمواد عرض

عند استيراد منتجات Firebase من .unitypackage ملفات تم تنزيلها من موقع Google APIs for Unity الإلكتروني، عليك مراعاة ما يلي:

  • إذا كنت تستخدم منتجات متعددة من Firebase في مشروعك، عليك تنزيل وترقية جميع منتجات Firebase إلى الإصدار نفسه.

  • لا تَخلِط بين طُرق الاستيراد في مشروع واحد. وهذا يعني عدم استيراد منتجات Firebase باستخدام عملية حزمة مواد العرض واستخدام عملية "مدير حِزم Unity".

بعد التنزيل، اتّبِع الخطوات التالية لاستيراد البيانات:

  1. في مشروع Unity المفتوح، انتقِل إلى الأصول > استيراد حزمة > حزمة مخصّصة.

  2. في نافذة استيراد حِزمة Unity، انقر على استيراد.

استيراد حِزم Firebase باستخدام "مدير حِزم Unity"

عند استيراد منتجات Firebase من .tgz ملفات تم تنزيلها من أرشيف Google APIs for Unity، يُرجى مراعاة ما يلي:

  • لا تتوفّر هذه الطريقة إلا في الإصدار 2018.3 والإصدارات الأحدث.

  • إذا كنت تستخدم منتجات متعددة من Firebase في مشروعك، عليك تنزيل وترقية جميع منتجات Firebase إلى الإصدار نفسه.

  • لا تَخلِط بين طُرق الاستيراد في مشروع واحد. وهذا يعني عدم استيراد منتجات Firebase باستخدام عملية حزمة مواد العرض وعملية "مدير حِزم Unity" .

  • يتم ربط ملفات .tgz الخاصة بكل منتج بجانب ملفاته الخاصة .tgz. يجب تنزيل ملف .tgz المنتجات وملفات .tgz الملحقة واستيرادها بالترتيب الصحيح:

    1. مدير التبعيات الخارجية (com.google.external-dependency-manager)
    2. Firebase Core (com.google.firebase.app)
    3. منتجات Firebase المستخدَمة في مشروعك إذا كنت تستخدم Realtime Database أو Cloud Storage، استورِد Authentication (com.google.firebase.auth) أولاً.

بعد التنزيل، استورِد ملفات .tgz إلى مشروعك باستخدام إحدى ال methods التالية:

واجهة مستخدم "أداة إدارة الحِزم"

  1. افتح نافذة "مدير الحِزم" في Unity.
  2. انقر على رمز + في أعلى يمين نافذة "مدير الحِزم" و اختَر Add package from tarball لفتح متصفّح الملفات.
  3. اختَر حزمة tar المطلوبة في متصفّح الملفات.

لا تتيح بعض الإصدارات القديمة من Unity 2019 إضافة حِزم tar مباشرةً. في هذه الحالة، عليك تنفيذ ما يلي:

  1. فكِّ ضغط ملف .tgz.
  2. انقر على رمز + في أعلى يمين نافذة "مدير الحِزم" ، ثم انقر على Add package from disk لفتح متصفّح الملفات.
  3. اختَر المجلد الذي تم استخراجه في متصفّح الملفات.

manifest.json

  1. أنشئ مجلدًا جديدًا بجانب مجلد Packages الخاص بمشروعك واسمه GooglePackages.
  2. ضَع ملفات .tgz في هذا المجلد.
  3. استخدِم محرِّر نصوص لفتح Packages/manifest.json ضمن مجلد مشروع Unity.
  4. أضِف إدخالًا لكل حزمة تريد استيرادها، مع ربط اسم الحزمة بالموقع على القرص. احرص على إلحاق file: بمسار الملف .tgz. على سبيل المثال، إذا كنت تستورد com.google.firebase.storage ومكوّناتmanifest.json التي تعتمد عليها، سيظهر manifest.json على النحو التالي:

    {
      "dependencies": {
        "com.google.external-dependency-manager": "file:../GooglePackages/com.google.external-dependency-manager-1.2.164.tgz",
        "com.google.firebase.app": "file:../GooglePackages/com.google.firebase.app-7.1.0.tgz",
        "com.google.firebase.auth": "file:../GooglePackages/com.google.firebase.auth-7.1.0.tgz",
        "com.google.firebase.storage": "file:../GooglePackages/com.google.firebase.storage-7.1.0.tgz",
        // com.unity package entries...
      }
    }
    
  5. احفظ ملف manifest.json.

  6. عندما يستعيد Unity التركيز، ستتم إعادة تحميل manifest.json واستيراد الحِزم التي تمت إضافتها حديثًا.

لا تتيح بعض الإصدارات القديمة من Unity استخدام ملفات .tgz في manifest.json. في هذه الحالة، عليك إجراء ما يلي:

  1. فكِّ ضغط ملف .tgz.
  2. عدِّل manifest.json لاستخدام مسار المجلد الذي تم استخراجه بدلاً من ملف .tgz، على النحو التالي:

    {
      "dependencies": {
        "com.google.external-dependency-manager": "file:../GooglePackages/com.google.external-dependency-manager-1.2.164",
        "com.google.firebase.app": "file:../GooglePackages/com.google.firebase.app-7.1.0",
        "com.google.firebase.auth": "file:../GooglePackages/com.google.firebase.auth-7.1.0",
        "com.google.firebase.storage": "file:../GooglePackages/com.google.firebase.storage-7.1.0",
        // com.unity package entries...
      }
    }
    

نقل البيانات من "أداة إدارة الحِزم في Unity" إلى حِزم مواد العرض

في بعض الحالات، قد تحتاج إلى التبديل من استخدام "مدير حِزم Unity" لتتبُّع منتجات Firebase إلى استيراد المنتجات ضمن مجلد Assets.

إذا لم تكن متأكّدًا من طريقة الاستيراد التي تستخدمها، افتح الملف Packages/manifest.json في مجلّد project الخاص بمشروعك على Unity. إذا كان الملف يحتوي على إدخالات تبدأ بالرقم com.google.firebase، يعني ذلك أنّ مشروعك استخدم Unity Package Manager للقيام بعملية الاستيراد.

لنقل البيانات إلى حِزم مواد العرض:

  1. دوِّن إصدارات حِزم Firebase الحالية في مشروعك وأزِلها.

    1. من قائمة Window (النافذة)، انقر على Package Manager (مدير الحِزم). في نافذة مدير الحِزم، تأكَّد من اختيار "الحِزم: في المشروع".
    2. دوِّن إصدارات حِزم Firebase المستورَدة.
    3. انقر على اسم كل حزمة، ثم انقر على إزالة. احرص على إزالة حزمة "مدير التبعيات الخارجية" (.com.google.external-dependency-manager) بالإضافة إلى حِزم Firebase.
  2. نزِّل ملفات .unitypackage البديلة واستورِدها. ويكون أمامك خياران:

    • إذا كان بإمكانك الترقية إلى أحدث إصدار من كل حزمة، نزِّلملف zip لحزمة Firebase Unity SDK واستورِده كما هو موضّح في مقالة إضافة Firebase إلى مشروعك على Unity.
    • إذا كنت بحاجة إلى الاحتفاظ بإصدارات .unitypackage الحالية، يمكنك تنزيل واستيراد حِزم فردية كما هو موضّح أعلاه في هذه الصفحة.

نقل البيانات من حِزم مواد العرض إلى "مدير حِزم Unity"

في بعض الحالات، قد تحتاج إلى التبديل من استيراد المنتجات ضمن مجلد Assets إلى استيراد المنتجات وتتبُّعها باستخدام Unity Package Manager.

إذا لم تكن متأكّدًا من طريقة الاستيراد التي تستخدمها، افتح الملف Packages/manifest.json في مجلّد project الخاص بمشروعك على Unity. إذا كان الملف يحتوي على إدخالات تبدأ بالرقم com.google.firebase، يعني ذلك أنّ مشروعك يستخدم حاليًا أداة Unity Package Manager للاستيراد.

لنقل البيانات إلى "مدير حِزم Unity":

  1. تأكَّد من إزالة جميع حِزم Firebase وحزمة "مدير التبعيات الخارجية" من المجلد Assets باستخدام أيّ من الطريقتَين التاليتَين:

    واجهة مستخدم EDM4U

    1. في مشروع Unity المفتوح، انتقِل إلى الأصول > أداة إدارة التبعيات الخارجية > أداة إدارة الإصدارات > إلغاء تثبيت الحِزم المُدارة.
    2. اختَر جميع حِزم Firebase و"أداة إدارة التبعيات الخارجية".
    3. انقر على إلغاء تثبيت الحزمة المحدّدة.

    الإزالة يدويًا

    باستخدام أدوات نظام الملفات، احذف يدويًا المجلدات التالية:

    • Assets/Editor Default Resources/Firebase
    • Assets/ExternalDependencyManager
    • Assets/Firebase
    • Assets/Parse
    • Assets/Plugins/iOS/Firebase
  2. استورِد الحِزم باستخدام Unity Package Manager كما هو موضّح أعلاه في هذه الصفحة.