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

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

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

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

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

تقدّم هذه الصفحة تعليمات تتعلّق بـ "مدير حِزم Unity"، لذا ننصحك بالاطّلاع على مستندات 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 ضمن مجلد project في 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 الخاص بحزمة تطوير البرامج (SDK) لـ Firebase Unity واستورِده على النحو الموضّح في مقالة إضافة Firebase إلى مشروعك على Unity.
    • إذا كنت بحاجة إلى الاحتفاظ بإصدارات .unitypackage الحالية، يمكنك تنزيل الحِزم الفردية واستيرادها كما هو موضّح أعلاه في هذه الصفحة.

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

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

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

لنقل البيانات إلى Unity Package Manager:

  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، كما هو موضّح أعلاه في هذه الصفحة.