بسته های گوگل را برای یونیتی نصب کنید

بسته‌های گوگل برای یونیتی در دو قالب مختلف توزیع می‌شوند:

  • بسته‌های دارایی :
    • پسوند .unitypackage ‎ داشته باشد.
    • در پوشه Assets پروژه خود نصب کنید.
    • قابل ایمپورت در یونیتی ۵ و بالاتر.
    • معمولاً بسته‌های وابسته را شامل می‌شود.
  • بسته‌های مدیریت بسته‌های یونیتی (UPM) :
    • پسوند .tgz داشته باشد.
    • در پوشه‌ی Packages پروژه‌ی خود نصب کنید.
    • قابل ایمپورت در یونیتی ۲۰۱۸.۴ و بالاتر.
    • بسته‌های وابسته‌ای که باید جداگانه نصب شوند را ارجاع دهید.

صفحه بسته‌ها شامل جدیدترین فایل‌های .unitypackage برای همه بسته‌های موجود و فایل‌های .tgz برای برخی از بسته‌ها است.

صفحه بایگانی شامل فایل‌های .unitypackage ‎ و .tgz ‎ برای همه نسخه‌های بسته است.

در زیر می‌توانید دستورالعمل‌هایی در مورد نحوه نصب هر دو نوع بسته، به همراه دستورالعمل‌های مهاجرت برای انتقال از یک نوع به نوع دیگر را بیابید.

پس از آشنایی با این گزینه‌های نصب، حتماً به دستورالعمل‌های اضافی مخصوص محصول برای Firebase مراجعه کنید.

وارد کردن بسته‌ها با استفاده از OpenUPM

شما می‌توانید با استفاده از رجیستری OpenUPM بسته‌های خارجی را به پروژه Unity خود اضافه کنید. OpenUPM میزبان افزونه‌ها و SDK های مفید بسیاری مانند افزونه Google Play Integrity است که به محافظت از برنامه شما در برابر کلاهبرداری و سوءاستفاده کمک می‌کند.

برای مثال، در اینجا نحوه‌ی اضافه کردن افزونه‌ی Google Play Integrity با استفاده از OpenUPM آورده شده است.

رابط خط فرمان OpenUPM

اگر رابط خط فرمان OpenUPM را نصب کرده‌اید، می‌توانید رجیستری OpenUPM را با دستور زیر نصب کنید:

openupm add com.google.play.integrity

اوپن‌یو‌پی‌ام

  1. با انتخاب گزینه منوی Unity، Edit > Project Settings > Package Manager، تنظیمات مدیریت بسته را باز کنید.

  2. OpenUPM را به عنوان یک رجیستری محدود به پنجره Package Manager اضافه کنید:

    Name: package.openupm.com
    URL: https://package.openupm.com
    Scopes: com.google.external-dependency-manager
     com.google.play.common
     com.google.play.core
     com.google.play.integrity
    
  3. با انتخاب گزینه‌ی منوی Unity یعنی Window > Package Manager، منوی مدیریت بسته‌ها را باز کنید.

  4. منوی کشویی «دامنه مدیریت» را روی «ثبت‌های من» تنظیم کنید.

  5. بسته افزونه Google Play Integrity for Unity را از لیست بسته‌ها انتخاب کرده و روی نصب کلیک کنید.

وارد کردن بسته‌های Asset با فایل‌های .unitypackage

با انتخاب گزینه‌ی منوی Unity، Assets > Import package > Custom Package و وارد کردن همه‌ی موارد، فایل .unitypackage را وارد کنید. این کار محتویات بسته را به پروژه‌ی شما در زیر پوشه‌ی Assets اضافه می‌کند.

وارد کردن بسته‌های UPM با فایل‌های .tgz (2018.4+)

فایل‌های .tgz را با استفاده از یکی از روش‌های زیر به پروژه خود وارد کنید:

مانیفست.json

  1. یک پوشه جدید در کنار پوشه Packages پروژه خود ایجاد کنید و نام آن را GooglePackages بگذارید.
  2. فایل‌های .tgz را در آن پوشه قرار دهید.
  3. با استفاده از یک ویرایشگر متن، Packages/manifest.json را در پوشه پروژه Unity خود باز کنید.
  4. برای هر بسته‌ای که می‌خواهید نصب کنید، یک ورودی اضافه کنید و نام بسته را به مکانی روی دیسک، نسبت به فایل Packages/manifest.json نگاشت کنید. حتماً 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. وقتی یونیتی دوباره فوکوس را به دست بگیرد، فایل manifest.json را مجدداً بارگذاری کرده و بسته‌های تازه اضافه شده را وارد می‌کند.

برخی از نسخه‌های قدیمی‌تر Unity از فایل‌های .tgz در manifest.json پشتیبانی نمی‌کنند. در این صورت، شما باید:

  1. فایل‌های .tgz را از حالت فشرده خارج کنید.
  2. پوشه استخراج شده را در پوشه GooglePackages قرار دهید.
  3. فایل 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...
      }
    }
    

رابط کاربری مدیریت بسته‌ها

  1. پنجره‌ی Package Manager در یونیتی را باز کنید.
  2. روی آیکون + در گوشه سمت چپ بالای پنجره Package Manager کلیک کنید و گزینه Add package from tarball انتخاب کنید تا مرورگر فایل باز شود.

    تصویری از پنجره‌ی Unity Package Manager با

  3. فایل tarball مورد نظر را در مرورگر فایل انتخاب کنید.

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

  1. فایل .tgz را از حالت فشرده خارج کنید.
  2. روی آیکون + در گوشه سمت چپ بالای پنجره Package Manager کلیک کنید و گزینه Add package from disk را انتخاب کنید تا مرورگر فایل باز شود.

    تصویری از پنجره‌ی Unity Package Manager با

  3. پوشه استخراج شده را در مرورگر فایل انتخاب کنید.

مطمئن شوید که فایل‌های .tgz مربوط به وابستگی‌های بسته را نیز وارد می‌کنید، که می‌توانید آن‌ها را در صفحه بایگانی، زیر بخش بسته مورد نظر، پیدا کنید.

برای مثال، اگر شما com.google.firebase.storage را نصب می‌کردید، این فایل‌های .tgz را به ترتیب زیر نصب می‌کردید:

  1. مدیر وابستگی خارجی ( com.google.external-dependency-manager )
  2. هسته فایربیس ( com.google.firebase.app )
  3. احراز هویت فایربیس ( com.google.firebase.auth )
  4. فضای ذخیره‌سازی فایربیس ( com.google.firebase.storage )

اگر ترجیح می‌دهید تمام فایل‌های .tgz را یکجا و بدون نگرانی در مورد ترتیب آنها اضافه کنید، می‌توانید دستورالعمل‌های موجود در تب manifest.json را دنبال کنید.

کنترل نسخه

اگر از نرم‌افزار کنترل نسخه برای مدیریت فایل‌های پروژه خود استفاده می‌کنید، توصیه می‌کنیم فایل‌های .tgz مربوطه را به کنترل نسخه اضافه کنید. می‌توانید manifest.json پروژه خود را به صورت دستی ویرایش کنید (به دستورالعمل‌های بالا مراجعه کنید) و با استفاده از مسیرهای نسبی، به فایل‌های .tgz محلی ارجاع دهید.

اگر از گیت استفاده می‌کنید، برای مدیریت فایل‌های بزرگ .tgz ‎، استفاده از Git Large File Storage (LFS) را توصیه می‌کنیم.

مهاجرت از بسته‌های UPM به بسته‌های Asset

در برخی موارد، ممکن است بخواهید به جای استفاده از Unity Package Manager برای مدیریت بسته‌های گوگل، به نصب بسته‌ها در پوشه Assets روی بیاورید.

مطمئن شوید که تمام بسته‌های گوگل با استفاده از یکی از روش‌های زیر از Unity Package Manager حذف شده‌اند:

رابط کاربری مدیریت بسته‌ها

  1. پنجره‌ی Package Manager در یونیتی را باز کنید.
  2. در منوی کشویی سمت چپ بالا، گزینه In Project را انتخاب کنید.

    تصویری از پنجره‌ی Unity Package Manager با

  3. برای فیلتر کردن بسته‌های گوگل، com.google را در نوار جستجو تایپ کنید.

    تصویر صفحه پنجره مدیریت بسته‌های Unity با

  4. روی نام هر بسته کلیک کنید و سپس روی Remove کلیک کنید.

مانیفست.json

  1. با استفاده از یک ویرایشگر متن، Packages/manifest.json را در پوشه پروژه Unity خود باز کنید.
  2. بررسی کنید که آیا بسته‌ای از گوگل در قسمت «وابستگی‌ها» وجود دارد یا خیر. نام بسته باید با «com.google» شروع شود، برای مثال «com.google.firebase.app».
  3. اون خطوط رو حذف کنید و فایل json رو ذخیره کنید.
  4. وقتی یونیتی دوباره تمرکز خود را به دست آورد، فایل manifest.json را مجدداً بارگذاری کرده و بسته‌های حذف شده را حذف می‌کند.

پس از حذف نصب آن بسته‌ها از Unity Package Manager، می‌توانید فایل‌های جایگزین .unitypackage را از صفحه بایگانی دانلود و وارد کنید.

مهاجرت از بسته‌های Asset به بسته‌های UPM

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

اگر مطمئن نیستید که از کدام روش نصب استفاده می‌کنید، در رابط کاربری Unity، بررسی کنید که آیا بسته‌های گوگل مورد نظر در تب Project، در قسمت Assets، نمایش داده می‌شوند یا خیر.

برای مهاجرت به بسته‌های UPM:

  1. مطمئن شوید که تمام بسته‌های گوگل از پوشه Assets حذف شده‌اند.

    • برای حذف نصب بسته‌های Firebase، این دستورالعمل‌ها را دنبال کنید.
    • برای حذف نصب افزونه‌های Play برای یونیتی، پوشه GooglePlayPlugins را در Assets حذف کنید.
  2. بسته‌ها را با استفاده از Unity Package Manager، همانطور که در بالا توضیح داده شد، نصب کنید.

دستورالعمل‌های مهاجرت مختص محصول

برای دستورالعمل‌های Firebase اینجا را ببینید.