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

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

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

MechaHamster (GitHub)

MechaHamster (متجر التطبيقات)

MechaHamster (متجر Play)


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

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

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

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

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

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

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

    • لأنظمة التشغيل 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 في مكان مناسب.

    • يمكنك تنزيل حزمة SDK Firebase Unity مرة أخرى في أي وقت.

    • حزمة SDK لنظام التشغيل Firebase Unity ليست مرتبطة بنظام أساسي معيّن.

  2. في مشروع Unity المفتوح، انتقِل إلى مواد العرض > استيراد حزمة > حزمة مخصّصة.

  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. في نافذة استيراد حِزمة Unity، انقر على استيراد.

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

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

تتطلّب حزمة SDK لنظام التشغيل Android من Firebase Unity استخدام Google Play services، ويجب أن يكون محدَّثًا قبل استخدام حزمة SDK.

أضِف بيان using ورمز الإعداد التاليَين في بداية تطبيقك. يمكنك التحقّق من توفّر Google Play services واختياريًا تحديثها إلى الإصدار الذي تتطلّبه حزمة SDK Firebase Unity قبل استدعاء أي من ال methods الأخرى في حزمة 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 في Unity IDE أو اختَر إنشاء مشروع Unity لأجهزة الكمبيوتر المكتبي.

  3. (اختياري) يمكنك تشغيل مشروع Unity في "وضع التعديل".

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

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

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

      من المهم إجراء ذلك لتجنُّب حدوث تعارض في الخيارات بين المثيل المستخدَم من قِبل Unity IDE والمثيل المستخدَم من قِبل مشروع Unity.

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

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

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

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

منتج Firebase حزمة Unity
AdMob يتم توزيعها بشكل منفصل في AdMob Unity Plugin
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
Dynamic Links FirebaseDynamicLinks.unitypackage
(إجراء يُنصح به) FirebaseAnalytics.unitypackage
Realtime Database FirebaseDatabase.unitypackage
Remote Config FirebaseRemoteConfig.unitypackage
(إجراء يُنصح به) FirebaseAnalytics.unitypackage

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

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

منتج Firebase (لأجهزة الكمبيوتر المكتبي) حزمة Unity
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. لذلك، لا تحتاج إلى تجميع الرمز بشكل مشروط لاستهداف أجهزة الكمبيوتر المكتبي.

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