بسته های Google برای Unity در دو قالب مختلف توزیع می شوند:
- بسته های دارایی :
- یک پسوند
.unitypackage
داشته باشید. - در فهرست
Assets
پروژه خود نصب کنید. - قابل واردات در یونیتی 5 و بالاتر.
- به طور کلی شامل بسته های وابسته است.
- یک پسوند
- بسته های Unity Package Manager (UPM) :
- پسوند
.tgz
داشته باشید. - در فهرست
Packages
پروژه خود نصب کنید. - قابل واردات در یونیتی 2018.4 و بالاتر.
- بسته های وابسته به مرجع که نیاز به نصب جداگانه دارند.
- پسوند
صفحه بستهها حاوی آخرین فایلهای .unitypackage
برای همه بستههای موجود و فایلهای .tgz
برای برخی از بستهها است.
صفحه آرشیو شامل فایلهای .unitypackage
و .tgz
برای همه نسخههای بسته است.
در زیر میتوانید دستورالعملهایی در مورد نحوه نصب هر دو نوع بسته به همراه دستورالعملهای انتقال برای انتقال از نوع به نوع دیگر را بیابید.
هنگامی که با این گزینههای نصب آشنا شدید، حتماً به دستورالعملهای محصول خاص برای Firebase مراجعه کنید.
وارد کردن بسته ها با استفاده از OpenUPM
با استفاده از رجیستری OpenUPM می توانید بسته های خارجی را به پروژه Unity خود اضافه کنید. OpenUPM میزبان بسیاری از افزونه ها و SDK های مفید است، مانند افزونه Google Play Integrity، که به محافظت از برنامه شما در برابر تقلب و سوء استفاده کمک می کند.
در اینجا نحوه اضافه کردن، به عنوان مثال، پلاگین Google Play Integrity با استفاده از OpenUPM آورده شده است.
OpenUPM-CLI
اگر OpenUPM CLI را نصب کرده اید، می توانید رجیستری OpenUPM را با دستور زیر نصب کنید:
openupm add com.google.play.integrity
OpenUPM
تنظیمات مدیریت بسته را با انتخاب گزینه منوی 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 باز کنید.
منوی کشویی مدیریت دامنه را برای انتخاب My Registries تنظیم کنید.
افزونه Google Play Integrity برای بسته Unity را از لیست بسته انتخاب کنید و Install را فشار دهید.
وارد کردن بستههای دارایی با فایلهای .unitypackage
فایل .unitypackage
را با انتخاب گزینه منوی Unity Assets > Import package > Custom Package
و وارد کردن همه موارد وارد کنید. این محتویات بسته را در فهرست Assets به پروژه شما اضافه می کند.
وارد کردن بستههای UPM با فایلهای .tgz
(2018.4 و بالاتر)
فایلهای .tgz
را با استفاده از یکی از روشهای زیر به پروژه خود وارد کنید:
manifest.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... } }
UI مدیر بسته
- پنجره Unity's Package Manager را باز کنید.
روی نماد
+
در گوشه سمت چپ بالای پنجره Package Manager کلیک کنید وAdd package from tarball
را انتخاب کنید تا مرورگر فایل باز شود.تربال مورد نظر را در مرورگر فایل انتخاب کنید.
برخی از نسخههای قدیمیتر Unity از افزودن مستقیم تاربولها پشتیبانی نمیکنند. در این مورد، شما نیاز دارید:
- فایل
.tgz
را از حالت فشرده خارج کنید. روی نماد
+
در گوشه سمت چپ بالای پنجره Package Manager کلیک کنید وAdd package from disk
را انتخاب کنید تا مرورگر فایل باز شود.پوشه استخراج شده را در مرورگر فایل انتخاب کنید.
مطمئن شوید که فایلهای .tgz
را برای وابستگیهای بسته نیز وارد کنید، که میتوانید آنها را در صفحه آرشیو در قسمت بسته مورد نظر مشاهده کنید.
برای مثال، اگر com.google.firebase.storage
نصب میکردید، این فایلهای .tgz
را به ترتیب زیر نصب میکنید:
- مدیر وابستگی خارجی (
com.google.external-dependency-manager
) - Firebase Core (
com.google.firebase.app
) - Firebase Auth (
com.google.firebase.auth
) - فضای ذخیره سازی Firebase (
com.google.firebase.storage
)
اگر ترجیح میدهید همه فایلهای .tgz
را به یکباره اضافه کنید، بدون نگرانی در مورد ترتیب، میتوانید دستورالعملهای موجود در برگه manifest.json را دنبال کنید.
کنترل نسخه
اگر از نرم افزار کنترل نسخه برای مدیریت فایل های پروژه خود استفاده می کنید، توصیه می کنیم فایل های .tgz
مربوطه را به کنترل نسخه اضافه کنید. شما می توانید به صورت دستی manifest.json
پروژه خود را ویرایش کنید (به دستورالعمل های بالا مراجعه کنید) و به فایل های محلی .tgz
با استفاده از مسیرهای نسبی ارجاع دهید.
اگر از git استفاده میکنید، ما Git Large File Storage (LFS) را برای مدیریت فایلهای بزرگ .tgz
توصیه میکنیم.
مهاجرت از بسته های UPM به بسته های دارایی
در برخی موارد، ممکن است بخواهید از استفاده از Unity Package Manager برای مدیریت بستههای Google، به نصب بستهها در پوشه Assets بروید.
مطمئن شوید که همه بستههای Google از Unity Package Manager با استفاده از یکی از روشهای زیر حذف شدهاند:
UI مدیر بسته
- پنجره Unity's Package Manager را باز کنید.
در قسمت بالا سمت چپ،
In Project
انتخاب کنید.برای فیلتر کردن بستههای Google،
com.google
در نوار جستجو تایپ کنید.روی نام هر بسته کلیک کنید سپس روی
Remove
کلیک کنید.
manifest.json
- از یک ویرایشگر متن برای باز کردن
Packages/manifest.json
در پوشه پروژه Unity خود استفاده کنید. - بررسی کنید که آیا بستههایی از Google در قسمت «وابستگیها» وجود دارد یا خیر. نام بسته باید با "com.google" شروع شود، برای مثال "com.google.firebase.app".
- آن خطوط را حذف کنید و فایل json را ذخیره کنید.
- هنگامی که یونیتی فوکوس خود را به دست آورد، فایل
manifest.json
را دوباره بارگیری می کند و بسته های حذف شده را حذف می کند.
هنگامی که آن بسته ها را از Unity Package Manager حذف نصب کردید، می توانید فایل های جایگزین .unitypackage
را از صفحه آرشیو دانلود و وارد کنید.
مهاجرت از بسته های دارایی به بسته های UPM
در برخی موارد، ممکن است بخواهید از نصب محصولات زیر درخت دارایی ها به نصب و ردیابی محصولات با Unity Package Manager بروید.
اگر مطمئن نیستید که از کدام روش نصب استفاده میکنید، در رابط کاربری Unity، بررسی کنید که آیا بستههای Google مورد نظر در تب Project، در قسمت Assets ظاهر میشوند یا خیر.
برای مهاجرت به بسته های UPM:
مطمئن شوید که تمام بسته های Google از پوشه Assets حذف شده است.
- برای حذف نصب بسته های Firebase این دستورالعمل ها را دنبال کنید.
- برای حذف نصب Play Plugins for Unity، پوشه
GooglePlayPlugins
را در قسمتAssets
حذف کنید.
همانطور که در بالا توضیح داده شد، بسته ها را با استفاده از Unity Package Manager نصب کنید.
دستورالعمل های مهاجرت ویژه محصول
برای دستورالعمل های Firebase اینجا را ببینید.