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