گزینه‌های نصب اضافی Unity

به‌جای بارگیری فایل بزرگ .zip حاوی همه فایل‌های .unitypackage برای .NET 3.X و .NET 4.X، می‌توانید بسته‌های جداگانه را از سایت Google APIs for Unity بارگیری کنید.

سایت این موارد را ارائه می‌دهد:

  • فایل‌های .NET 4.X .unitypackage تکی برای وارد کردن به‌عنوان بسته‌های «دارایی».
  • ‫.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 را بااستفاده از یکی از روش‌های زیر به پروژه‌تان وارد کنید:

میانای کاربر مدیر بسته

  1. پنجره مدیر بسته Unity را باز کنید.
  2. روی نماد + در گوشه راست بالای پنجره «مدیر بسته» کلیک کنید و Add package from tarball را انتخاب کنید تا مرورگر فایل باز شود.
  3. فایل tarball موردنظر را در مرورگر فایل انتخاب کنید.

برخی‌از نسخه‌های قدیمی Unity 2019 از افزودن مستقیم tarball پشتیبانی نمی‌کنند. در این مورد، باید:

  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 شما به این شکل خواهد بود:

    {
      "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 تغییر دهید.

اگر مطمئن نیستید از کدام روش وارد کردن استفاده می‌کنید، در پوشه پروژه Unity خود، فایل Packages/manifest.json را باز کنید. اگر فایل حاوی ورودی‌هایی باشد که با com.google.firebase شروع می‌شوند، پروژه شما از «مدیر بسته Unity» برای وارد کردن استفاده کرده است.

برای انتقال به «بسته‌های دارایی»:

  1. نسخه‌های بسته Firebase کنونی را در پروژه‌تان یادداشت کنید و آن‌ها را بردارید.

    1. از منو پنجره، مدیر بسته را انتخاب کنید. در پنجره مدیر بسته، مطمئن شوید که «بسته‌ها: در پروژه» انتخاب شده باشد.
    2. نسخه‌های بسته‌های Firebase واردشده را یادداشت کنید.
    3. روی هر نام بسته کلیک کنید، سپس روی برداشتن کلیک کنید. حتماً بسته External Dependency Manager (مدیر وابستگی خارجی) (.com.google.external-dependency-manager) و همچنین بسته‌های Firebase را بردارید.
  2. فایل‌های جایگزین .unitypackage را بارگیری و وارد کنید. دو گزینه دارید:

    • اگر می‌توانید به جدیدترین نسخه هر بسته ارتقا دهید، فایل فشرده «کیت توسعه نرم‌افزار Firebase Unity» را بارگیری کنید و همان‌طور که در افزودن Firebase به پروژه Unity توضیح داده شده است آن را وارد کنید.
    • اگر باید نسخه‌های فعلی .unitypackage را حفظ کنید، می‌توانید بسته‌های جداگانه را همان‌طور که در بالا در این صفحه توضیح داده شده است بارگیری و وارد کنید.

انتقال از بسته‌های دارایی به «مدیر بسته Unity»

در برخی موارد، ممکن است بخواهید از وارد کردن محصولات تحت پوشه Assets به وارد کردن و ردیابی محصولات با «مدیر بسته Unity» تغییر دهید.

اگر مطمئن نیستید از کدام روش وارد کردن استفاده می‌کنید، در پوشه پروژه Unity خود، فایل Packages/manifest.json را باز کنید. اگر فایل حاوی ورودی‌هایی باشد که با com.google.firebase شروع می‌شود، پروژه شما ازقبل از «مدیر بسته Unity» برای وارد کردن استفاده می‌کند.

برای انتقال به «مدیر بسته Unity»:

  1. مطمئن شوید که همه بسته‌های Firebase و بسته «مدیر وابستگی خارجی» بااستفاده از یکی از روش‌های زیر از پوشه Assets برداشته شده باشند.

    EDM4U UI

    1. در پروژه Unity باز خود، به دارایی‌ها > مدیر وابستگی خارجی > مدیر نسخه > حذف نصب بسته‌های مدیریت‌شده پیمایش کنید.
    2. همه بسته‌های Firebase و «مدیر وابستگی خارجی» را انتخاب کنید.
    3. روی حذف نصب بسته انتخابی کلیک کنید.

    برداشتن دستی

    بااستفاده از ابزارهای سیستم فایل، پوشه‌های زیر را به‌صورت دستی حذف کنید:

    • Assets/Editor Default Resources/Firebase
    • Assets/ExternalDependencyManager
    • Assets/Firebase
    • Assets/Parse
    • Assets/Plugins/iOS/Firebase
  2. بسته‌ها را بااستفاده از «مدیر بسته Unity» همان‌طور که در بالا در این صفحه توضیح داده شده است وارد کنید.