بهجای بارگیری فایل بزرگ .zip که حاوی همه فایلهای .unitypackage برای هر دو .NET 3.X و .NET 4.X است، میتوانید بستههای تکی را از سایت Google APIs for Unity بارگیری کنید.
این سایت موارد زیر را ارائه میدهد:
- فایلهای تکی .NET 4.X
.unitypackageبرای وارد کردن بهعنوان بستههای دارایی. - بایگانیهای
.tgzتکی برای وارد کردن بااستفاده از Unity Package Manager.
این امر بهویژه زمانی مفید است که برنامه شما از یک محصول Firebase استفاده میکند، زیرا
فایلهای .unitypackage تکی حاوی تمام وابستگیهای موردنیاز هستند و
فایلهای .tgz در کنار فایلهای .tgz مرتبطی که به آنها وابسته هستند فهرست میشوند.
این صفحه دستورالعملهایی درباره Unity Package Manager ارائه میدهد، بنابراین بهتر است ازطریق اسناد Unity با این ابزار آشنا شوید.
وارد کردن بستههای Firebase بهعنوان «دارایی»
هنگام وارد کردن محصولات Firebase از فایلهای .unitypackage بارگیریشده از
سایت Google APIs برای Unity،
موارد زیر را بهخاطر داشته باشید:
اگر از چند محصول Firebase در پروژهتان استفاده میکنید، باید همه محصولات Firebase را به همان نسخه بارگیری و ارتقا دهید.
روشهای وارد کردن را در یک پروژه ترکیب نکنید. یعنی محصولات Firebase را با جریان بسته «دارایی» و بااستفاده از جریان Unity Package Manager وارد نکنید.
پساز بارگیری، برای وارد کردن:
در پروژه Unity بازشده، به داراییها > وارد کردن بسته > بسته سفارشی بروید.
در پنجره Import Unity Package، روی Import کلیک کنید.
وارد کردن بستههای Firebase بااستفاده از «مدیر بسته Unity»
هنگام وارد کردن محصولات Firebase از فایلهای .tgz بارگیریشده از بایگانی Google APIs for Unity، موارد زیر را درنظر داشته باشید:
این روش فقط در نسخه 2018.3+ دردسترس است.
اگر از چند محصول Firebase در پروژهتان استفاده میکنید، باید همه محصولات Firebase را به همان نسخه بارگیری و ارتقا دهید.
روشهای وارد کردن را در یک پروژه ترکیب نکنید. یعنی محصولات Firebase را با جریان بسته «دارایی» و جریان Unity Package Manager وارد نکنید.
وابستگیهای هر فایل
.tgzمحصول در کنار آن در فایلهای.tgzخودشان پیوند داده شدهاند. باید فایل محصول.tgzو فایلهای وابستگی.tgzرا بهترتیب صحیح بارگیری و وارد کنید:- مدیر وابستگی خارجی (
com.google.external-dependency-manager) - Firebase Core (
com.google.firebase.app) - محصولات Firebase استفادهشده در پروژه شما. اگر از Realtime Database یا
Cloud Storage استفاده میکنید، ابتدا Authentication (
com.google.firebase.auth) را وارد کنید.
- مدیر وابستگی خارجی (
پساز بارگیری، فایلهای .tgz را بااستفاده از یکی از روشهای زیر به پروژهتان وارد کنید:
میانای کاربر مدیر بسته
- پنجره Unity Package Manager را باز کنید.
- روی نماد
+در گوشه بالا سمت راست پنجره «مدیر بسته» کلیک کنید وAdd package from tarballرا انتخاب کنید تا مرورگر فایل باز شود. - tarball موردنظر را در مرورگر فایل انتخاب کنید.
برخیاز نسخههای قدیمیتر Unity 2019 از افزودن مستقیم tarball پشتیبانی نمیکنند. در این صورت، باید:
- فایل
.tgzرا از حالت فشرده خارج کنید. - روی نماد
+در گوشه بالا سمت راست پنجره Package Manager کلیک کنید وAdd package from diskرا انتخاب کنید تا مرورگر فایل باز شود. - پوشه استخراجشده را در مرورگر فایل انتخاب کنید.
manifest.json
- پوشه جدیدی در کنار پوشه
Packagesپروژهتان ایجاد کنید و نام آن راGooglePackagesبگذارید. - فایلهای
.tgzرا در آن پوشه قرار دهید. - از ویرایشگر نوشتار برای باز کردن
Packages/manifest.jsonدر پوشه پروژه Unity خود استفاده کنید. برای هر بستهای که میخواهید وارد کنید، ورودی اضافه کنید و نام بسته را به مکان آن در دیسک نگاشت کنید. حتماً
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را ذخیره کنید.وقتی Unity دوباره تمرکز را بهدست آورد،
manifest.jsonرا مجدداً بار میکند و بستههای جدیداً اضافهشده را وارد میکند.
برخیاز نسخههای قدیمیتر Unity از فایلهای .tgz در manifest.json پشتیبانی نمیکنند.
در این صورت، باید:
- فایل
.tgzرا از حالت فشرده خارج کنید. 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 Package Manager به بستههای دارایی
در برخی موارد، ممکن است بخواهید بهجای استفاده از Unity Package Manager برای
ردیابی محصولات Firebase، محصولات را در پوشه Assets وارد کنید.
اگر مطمئن نیستید از کدام روش وارد کردن استفاده میکنید، در پوشه پروژه Unity، فایل Packages/manifest.json را باز کنید. اگر فایل حاوی ورودیهایی است که با com.google.firebase شروع میشوند، پروژه شما از Unity Package Manager برای وارد کردن استفاده کرده است.
برای انتقال به «بستههای دارایی»:
نسخههای بسته Firebase فعلی را در پروژهتان یادداشت کنید و آنها را بردارید.
- از منوِ پنجره، مدیر بسته را انتخاب کنید. در پنجره Package Manager، مطمئن شوید «Packages: In Project» انتخاب شده باشد.
- نسخههای بستههای Firebase واردشده را یادداشت کنید.
- روی نام هر بسته کلیک کنید، سپس روی برداشتن کلیک کنید. حتماً بسته
External Dependency Manager (
.com.google.external-dependency-manager) و همچنین بستههای Firebase را بردارید.
فایلهای جایگزین
.unitypackageرا بارگیری و وارد کنید. دو گزینه دارید:- اگر میتوانید به جدیدترین نسخه هر بسته ارتقا دهید، فایل zip «کیت توسعه نرمافزار Firebase Unity» را بارگیری کنید و طبق توضیحات افزودن Firebase به پروژه Unity وارد کنید.
- اگر لازم است نسخههای فعلی
.unitypackageرا حفظ کنید، میتوانید بستههای تکی را بارگیری و وارد کنید، همانطور که در بالا در این صفحه توضیح داده شده است.
انتقال از بستههای دارایی به Unity Package Manager
در برخی موارد، ممکن است بخواهید از وارد کردن محصولات در پوشه Assets به وارد کردن و ردگیری محصولات با Unity Package Manager تغییر دهید.
اگر مطمئن نیستید از کدام روش وارد کردن استفاده میکنید، در پوشه پروژه Unity، فایل Packages/manifest.json را باز کنید. اگر فایل حاوی ورودیهایی است که با com.google.firebase شروع میشود، پروژهتان ازقبل از Unity Package Manager برای وارد کردن استفاده میکند.
برای انتقال به Unity Package Manager:
مطمئن شوید همه بستههای Firebase و بسته «مدیر وابستگی خارجی» بااستفاده از یکی از روشهای زیر از پوشه
Assetsبرداشته شده باشند.میانای کاربر EDM4U
- در پروژه Unity بازشده، به Assets > External Dependency Manager > Version Handler > Uninstall Managed Packages بروید.
- همه بستههای Firebase و «مدیر وابستگی خارجی» را انتخاب کنید.
- روی حذف نصب بسته انتخابی کلیک کنید.
برداشتن دستی
بااستفاده از ابزارهای سیستم فایل، پوشههای زیر را بهصورت دستی حذف کنید:
Assets/Editor Default Resources/FirebaseAssets/ExternalDependencyManagerAssets/FirebaseAssets/ParseAssets/Plugins/iOS/Firebase
بستهها را بااستفاده از Unity Package Manager وارد کنید، همانطور که در بالا در این صفحه توضیح داده شده است.