إضافة Firebase إلى مشروع Unity

يمكنك تحسين ألعابك على Unity باستخدام حِزم تطوير البرامج (SDK) من Firebase التي يبلغ عددها Unity.

لإظهار مدى سهولة توصيل Firebase بمشروع Unity، أنشأنا نموذج لعبة، MechaHamster. إذا أردت تجربة إضافة Firebase إلى لعبة، استخدِم الإصدار الأولي المتوفّر على GitHub. إذا أردت الحصول على نسخة كاملة، يمكنك الاطّلاع على النُسخ المتوفّرة في متجر التطبيقات أو Google Play Store.

MechaHamster (GitHub)

MechaHamster (App Store)

MechaHamster (متجر Google Play)


يمكنك الاطّلاع على مزيد من المعلومات حول تحسين ألعابك باستخدام Firebase في صفحة ألعاب Firebase.

هل سبق لك إضافة Firebase إلى مشروع Unity؟ تأكَّد من استخدام أحدث إصدار من حزمة تطوير البرامج (SDK) لـ Firebase Unity.

المتطلبات الأساسية

  • ثبِّت الإصدار Unity 2021 LTS أو إصدارًا أحدث. قد تكون الإصدارات السابقة متوافقة أيضًا، ولكن لن يتم توفير الدعم لها بشكل نشط.

  • (أنظمة Apple الأساسية فقط) ثبِّت ما يلي:

    • الإصدار 26.2 من Xcode أو إصدار أحدث
    • ‫CocoaPods 1.12.0 أو إصدار أحدث
  • تأكَّد من أنّ مشروع Unity يستوفي المتطلبات التالية:

    • بالنسبة إلى أجهزة iOS: يستهدف الإصدار 15 من نظام التشغيل iOS أو الإصدارات الأحدث
    • بالنسبة إلى tvOS: يستهدف الإصدار 15 من tvOS أو الإصدارات الأحدث
    • بالنسبة إلى Android: يستهدف المستوى 24 من واجهة برمجة التطبيقات (Nougat) أو الإصدارات الأحدث
  • اضبط جهازًا فعليًا أو استخدِم محاكيًا لتشغيل تطبيقك.

    • بالنسبة إلى أنظمة Apple الأساسية: يمكنك إعداد جهاز فعلي أو استخدام محاكي iOS أو tvOS.

    • بالنسبة إلى أجهزة Android: يجب أن تستخدم برامج المحاكاة صورة محاكاة مع Google Play.

إذا لم يكن لديك مشروع Unity وتريد فقط تجربة أحد منتجات Firebase، يمكنك تنزيل أحد نماذج البدء السريع.

الخطوة 1: إنشاء مشروع Firebase

قبل إضافة Firebase إلى مشروع Unity، عليك إنشاء مشروع Firebase لربطه بمشروع Unity. انتقِل إلى مقالة فهم مشاريع Firebase لمزيد من المعلومات عن مشاريع Firebase.

الخطوة 2: تسجيل تطبيقك في Firebase

يمكنك تسجيل تطبيق أو لعبة أو أكثر لربطها بمشروعك على Firebase.

  1. انتقِل إلى وحدة تحكّم Firebase.

  2. في منتصف صفحة النظرة العامة على المشروع، انقر على رمز Unity () لبدء سير عمل الإعداد.

    إذا سبق لك إضافة تطبيق إلى مشروع Firebase، انقر على إضافة تطبيق لعرض خيارات المنصة.

  3. اختَر هدف الإصدار الذي تريد تسجيله في مشروع Unity، أو يمكنك اختيار تسجيل كلا الهدفَين الآن في الوقت نفسه.

  4. أدخِل أرقام تعريف مشروعك على Unity الخاصة بالمنصة.

    • بالنسبة إلى أجهزة iOS: أدخِل معرّف iOS لمشروع Unity في حقل معرّف حزمة iOS.

    • بالنسبة إلى Android: أدخِل معرّف Android لمشروع Unity في حقل اسم حزمة Android.
      غالبًا ما يُستخدَم المصطلحان اسم الحزمة ورقم تعريف التطبيق بالتبادل.

  5. (اختياري) أدخِل الأسماء المستعارة الخاصة بالمنصة لمشروعك على Unity.
    هذه الأسماء المستعارة هي معرّفات داخلية ومريحة ولا تظهر إلا لك في وحدة تحكّم "Firebase".

  6. انقر على تسجيل التطبيق.

الخطوة 3: إضافة ملفات إعداد Firebase

  1. احصل على ملفات إعداد Firebase الخاصة بالمنصة في سير عمل إعداد وحدة تحكّم Firebase.

    • بالنسبة إلى أجهزة iOS: انقر على تنزيل GoogleService-Info.plist.

    • بالنسبة إلى Android: انقر على تنزيل google-services.json.

  2. افتح نافذة المشروع في مشروع Unity، ثم انقل ملفات الإعداد إلى المجلد Assets.

  3. في وحدة تحكّم Firebase، انقر على التالي في سير عمل الإعداد.

الخطوة 4: إضافة حِزم تطوير البرامج (SDK) لمنصّة Firebase Unity

  1. في وحدة تحكّم Firebase، انقر على تنزيل حزمة تطوير البرامج (SDK) لـ Firebase Unity، ثم فُك ضغط حزمة تطوير البرامج (SDK) في مكان مناسب.

  2. في مشروع Unity المفتوح، انتقِل إلى Assets > Import Package > Custom Package.

  3. من حزمة تطوير البرامج (SDK) التي تم فك ضغطها، اختَر منتجات Firebase المتوافقة التي تريد استخدامها في تطبيقك.

    تم تفعيل Analytics

    • أضِف حزمة Firebase لـ Google Analytics: FirebaseAnalytics.unitypackage
    • أضِف الحِزم لأي منتجات أخرى من Firebase تريد استخدامها في تطبيقك. على سبيل المثال، لاستخدام Firebase Authentication و Firebase Realtime Database:
      FirebaseAuth.unitypackage و FirebaseDatabase.unitypackage

    لم يتم تفعيل Analytics

    أضِف الحِزم لمنتجات Firebase التي تريد استخدامها في تطبيقك. على سبيل المثال، لاستخدام Firebase Authentication وFirebase Realtime Database:
    FirebaseAuth.unitypackage و FirebaseDatabase.unitypackage

  4. في نافذة Import Unity Package (استيراد حزمة Unity)، انقر على Import (استيراد).

  5. في وحدة تحكّم Firebase، انقر على التالي في سير عمل الإعداد.

الخطوة 5: التأكّد من متطلبات إصدار "خدمات Google Play"

تتطلّب بعض المنتجات في حزمة تطوير البرامج (SDK) لـ Unity من Firebase لأجهزة Android استخدام Google Play services. المنتجات التي تتطلّب هذه التبعية يجب تحديث "Google Play services" قبل استخدام هذه المنتجات.

أضِف عبارة using ورمز الإعداد التاليَين في بداية تطبيقك. يمكنك التحقّق من توفّر تحديث لـ "Google Play services" وتحديثه اختياريًا إلى الإصدار المطلوب قبل استدعاء أي طرق أخرى في حزمة SDK.

using Firebase.Extensions;
Firebase.FirebaseApp.CheckAndFixDependenciesAsync().ContinueWithOnMainThread(task => {
  var dependencyStatus = task.Result;
  if (dependencyStatus == Firebase.DependencyStatus.Available) {
    // Create and hold a reference to your FirebaseApp,
    // where app is a Firebase.FirebaseApp property of your application class.
       app = Firebase.FirebaseApp.DefaultInstance;

    // Set a flag here to indicate whether Firebase is ready to use by your app.
  } else {
    UnityEngine.Debug.LogError(System.String.Format(
      "Could not resolve all Firebase dependencies: {0}", dependencyStatus));
    // Firebase Unity SDK is not safe to use here.
  }
});

اكتملت عملية الإعداد. أن يكون مشروع Unity مسجَّلاً ومعدًّا لاستخدام Firebase

إذا واجهت مشكلة في الإعداد، يمكنك الانتقال إلى صفحة تحديد المشاكل وحلّها والأسئلة الشائعة في Unity.

إعداد سير عمل على الكمبيوتر المكتبي (إصدار تجريبي)

عند إنشاء لعبة، غالبًا ما يكون من الأسهل اختبارها في محرِّر Unity وعلى الأنظمة الأساسية لأجهزة الكمبيوتر المكتبي أولاً، ثم نشرها واختبارها على الأجهزة الجوّالة لاحقًا في مرحلة التطوير. لدعم سير العمل هذا، نقدّم مجموعة فرعية من حزم تطوير البرامج (SDK) في Firebase Unity التي يمكن تشغيلها على أنظمة التشغيل Windows وmacOS وLinux ومن داخل محرِّر Unity.

  1. يمكنك إعداد مشروع Unity لمنصة كمبيوتر مكتبي باتّباع التعليمات نفسها المخصّصة لمنصة الأجهزة الجوّالة (ابدأ بخطوة تسجيل تطبيقك في Firebase أعلاه).

  2. شغِّل مشروع Unity في بيئة التطوير المتكاملة (IDE) في Unity أو اختَر إنشاء مشروع Unity لأجهزة الكمبيوتر المكتبي.

  3. (اختياري) شغِّل مشروع Unity في "وضع التعديل" (Edit Mode).

    يمكن أيضًا تشغيل حزمة تطوير البرامج (SDK) لـ Unity Firebase في وضع التعديل في Unity، ما يسمح باستخدامها في المكوّنات الإضافية للمحرِّر.

    1. عند إنشاء FirebaseApp يستخدمه المحرّر، لا تستخدِم المثيل التلقائي.

    2. بدلاً من ذلك، أدخِل اسمًا فريدًا لطلب FirebaseApp.Create().

      هذا الإجراء مهم لتجنُّب حدوث تعارض في الخيارات بين المثيل الذي تستخدمه بيئة التطوير المتكاملة (IDE) في Unity والمثيل الذي يستخدمه مشروعك في Unity.

منتجات Firebase المتوافقة

يمكنك الاطّلاع على مزيد من المعلومات حول مكتبات Unity Firebase في المستندات المرجعية.

مكتبات Firebase المتاحة للأجهزة الجوّالة

تتوافق حزمة تطوير البرامج (SDK) لـ Firebase Unity مع منتجات Firebase التالية على أجهزة Apple وAndroid:

منتج Firebase حزمة Unity
AdMob يتم توزيعه بشكل منفصل في المكوّن الإضافي AdMob Unity
Firebase AI Logic FirebaseAI.unitypackage
Analytics FirebaseAnalytics.unitypackage
App Check FirebaseAppCheck.unitypackage
Authentication FirebaseAuth.unitypackage
Cloud Firestore FirebaseFirestore.unitypackage
Cloud Functions FirebaseFunctions.unitypackage
Cloud Messaging FirebaseMessaging.unitypackage
(الخيار الذي يُنصح به) FirebaseAnalytics.unitypackage
Cloud Storage FirebaseStorage.unitypackage
Crashlytics FirebaseCrashlytics.unitypackage
(الخيار الذي يُنصح به) FirebaseAnalytics.unitypackage
Realtime Database FirebaseDatabase.unitypackage
Remote Config FirebaseRemoteConfig.unitypackage
(الخيار الذي يُنصح به) FirebaseAnalytics.unitypackage
المكتبات المتوقفة نهائيًا أو غير المتوافقة
Dynamic Links FirebaseDynamicLinks.unitypackage
(الخيار الذي يُنصح به) FirebaseAnalytics.unitypackage

مكتبات Firebase المتاحة لأجهزة الكمبيوتر المكتبي

تتضمّن حزمة تطوير البرامج (SDK) لـ Firebase Unity دعمًا لسير عمل الكمبيوتر المكتبي لمجموعة فرعية من المنتجات، ما يتيح استخدام أجزاء معيّنة من Firebase في محرِّر Unity وفي إصدارات الكمبيوتر المكتبي المستقلة على أنظمة التشغيل Windows وmacOS وLinux.

منتج Firebase (كمبيوتر مكتبي) حزمة Unity
Firebase AI Logic FirebaseAI.unitypackage
App Check FirebaseAppCheck.unitypackage
Authentication FirebaseAuth.unitypackage
Cloud Functions FirebaseFunctions.unitypackage
Cloud Firestore FirebaseFirestore.unitypackage
Cloud Storage FirebaseStorage.unitypackage
Realtime Database FirebaseDatabase.unitypackage
Remote Config FirebaseRemoteConfig.unitypackage

توفّر Firebase مكتبات أجهزة الكمبيوتر المكتبي المتبقية كعمليات تنفيذ موجزة (غير وظيفية) لتسهيل عملية الإنشاء لأنظمة التشغيل Windows وmacOS وLinux. لذلك، لست بحاجة إلى تجميع الرمز بشكل مشروط لاستهداف أجهزة الكمبيوتر المكتبي.

الخطوات التالية