بستههای گوگل برای یونیتی در دو قالب مختلف توزیع میشوند:
- بستههای دارایی :
- پسوند
.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اوپنیوپیام
با انتخاب گزینه منوی Unity، Edit > Project Settings > Package Manager، تنظیمات مدیریت بسته را باز کنید.
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با انتخاب گزینهی منوی Unity یعنی Window > Package Manager، منوی مدیریت بستهها را باز کنید.
منوی کشویی «دامنه مدیریت» را روی «ثبتهای من» تنظیم کنید.

بسته افزونه Google Play Integrity for Unity را از لیست بستهها انتخاب کرده و روی نصب کلیک کنید.
وارد کردن بستههای Asset با فایلهای .unitypackage
با انتخاب گزینهی منوی Unity، Assets > Import package > Custom Package و وارد کردن همهی موارد، فایل .unitypackage را وارد کنید. این کار محتویات بسته را به پروژهی شما در زیر پوشهی Assets اضافه میکند.
وارد کردن بستههای UPM با فایلهای .tgz (2018.4+)
فایلهای .tgz را با استفاده از یکی از روشهای زیر به پروژه خود وارد کنید:
مانیفست.json
- یک پوشه جدید در کنار پوشه
Packagesپروژه خود ایجاد کنید و نام آن راGooglePackagesبگذارید. - فایلهای
.tgzرا در آن پوشه قرار دهید. - با استفاده از یک ویرایشگر متن،
Packages/manifest.jsonرا در پوشه پروژه Unity خود باز کنید. برای هر بستهای که میخواهید نصب کنید، یک ورودی اضافه کنید و نام بسته را به مکانی روی دیسک، نسبت به فایل
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... } }فایل manifest.json را ذخیره کنید.
وقتی یونیتی دوباره فوکوس را به دست بگیرد، فایل manifest.json را مجدداً بارگذاری کرده و بستههای تازه اضافه شده را وارد میکند.
برخی از نسخههای قدیمیتر Unity از فایلهای .tgz در manifest.json پشتیبانی نمیکنند. در این صورت، شما باید:
- فایلهای
.tgzرا از حالت فشرده خارج کنید. - پوشه استخراج شده را در پوشه
GooglePackagesقرار دهید. فایل 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... } }
رابط کاربری مدیریت بستهها
- پنجرهی Package Manager در یونیتی را باز کنید.
روی آیکون
+در گوشه سمت چپ بالای پنجره Package Manager کلیک کنید و گزینهAdd package from tarballانتخاب کنید تا مرورگر فایل باز شود.
فایل tarball مورد نظر را در مرورگر فایل انتخاب کنید.
برخی از نسخههای قدیمیتر یونیتی از اضافه کردن مستقیم فایلهای tarball پشتیبانی نمیکنند. در این صورت، شما باید:
- فایل
.tgzرا از حالت فشرده خارج کنید. روی آیکون
+در گوشه سمت چپ بالای پنجره Package Manager کلیک کنید و گزینهAdd package from diskرا انتخاب کنید تا مرورگر فایل باز شود.
پوشه استخراج شده را در مرورگر فایل انتخاب کنید.
مطمئن شوید که فایلهای .tgz مربوط به وابستگیهای بسته را نیز وارد میکنید، که میتوانید آنها را در صفحه بایگانی، زیر بخش بسته مورد نظر، پیدا کنید.
برای مثال، اگر شما com.google.firebase.storage را نصب میکردید، این فایلهای .tgz را به ترتیب زیر نصب میکردید:
- مدیر وابستگی خارجی (
com.google.external-dependency-manager) - هسته فایربیس (
com.google.firebase.app) - احراز هویت فایربیس (
com.google.firebase.auth) - فضای ذخیرهسازی فایربیس (
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 حذف شدهاند:
رابط کاربری مدیریت بستهها
- پنجرهی Package Manager در یونیتی را باز کنید.
در منوی کشویی سمت چپ بالا، گزینه
In Projectرا انتخاب کنید.
برای فیلتر کردن بستههای گوگل،
com.googleرا در نوار جستجو تایپ کنید.
روی نام هر بسته کلیک کنید و سپس روی
Removeکلیک کنید.
مانیفست.json
- با استفاده از یک ویرایشگر متن،
Packages/manifest.jsonرا در پوشه پروژه Unity خود باز کنید. - بررسی کنید که آیا بستهای از گوگل در قسمت «وابستگیها» وجود دارد یا خیر. نام بسته باید با «com.google» شروع شود، برای مثال «com.google.firebase.app».
- اون خطوط رو حذف کنید و فایل json رو ذخیره کنید.
- وقتی یونیتی دوباره تمرکز خود را به دست آورد، فایل
manifest.jsonرا مجدداً بارگذاری کرده و بستههای حذف شده را حذف میکند.
پس از حذف نصب آن بستهها از Unity Package Manager، میتوانید فایلهای جایگزین .unitypackage را از صفحه بایگانی دانلود و وارد کنید.
مهاجرت از بستههای Asset به بستههای UPM
در برخی موارد، ممکن است بخواهید از نصب محصولات در زیر شاخه Assets به نصب و پیگیری محصولات با Unity Package Manager تغییر دهید.
اگر مطمئن نیستید که از کدام روش نصب استفاده میکنید، در رابط کاربری Unity، بررسی کنید که آیا بستههای گوگل مورد نظر در تب Project، در قسمت Assets، نمایش داده میشوند یا خیر.
برای مهاجرت به بستههای UPM:
مطمئن شوید که تمام بستههای گوگل از پوشه Assets حذف شدهاند.
- برای حذف نصب بستههای Firebase، این دستورالعملها را دنبال کنید.
- برای حذف نصب افزونههای Play برای یونیتی، پوشه
GooglePlayPluginsرا درAssetsحذف کنید.
بستهها را با استفاده از Unity Package Manager، همانطور که در بالا توضیح داده شد، نصب کنید.
دستورالعملهای مهاجرت مختص محصول
برای دستورالعملهای Firebase اینجا را ببینید.