अपने Unity प्रोजेक्ट में Firebase जोड़ना

हमारे Firebase Unity SDK टूल की मदद से, अपने Unity गेम को बेहतर बनाएं.

Firebase को अपने यूनिटी प्रोजेक्ट में आसानी से प्लग इन करने का तरीका दिखाने के लिए, हमने एक सैंपल गेम बनाया है. इसका नाम MechaHamster है. अगर आपको किसी गेम में Firebase को जोड़कर देखना है, तो GitHub पर उपलब्ध स्टार्टर वर्शन का इस्तेमाल करें. अगर आपको पूरा वर्शन चाहिए, तो App Store या Google Play Store में जाकर वर्शन देखें.

MechaHamster (GitHub)

MechaHamster (App Store)

MechaHamster (Play Store)


हमारे Firebase गेम पेज पर जाकर, Firebase की मदद से अपने गेम को बेहतर बनाने के बारे में ज़्यादा जानें.

क्या आपने पहले ही Firebase को अपने Unity प्रोजेक्ट में जोड़ लिया है? पक्का करें कि Firebase Unity SDK का नया वर्शन इस्तेमाल किया जा रहा हो.

ज़रूरी शर्तें

  • Unity 2021 LTS या इसके बाद का वर्शन इंस्टॉल करें. Unity 2020 के लिए सहायता को बंद कर दिया गया है. अगली मुख्य रिलीज़ के बाद, इसे सक्रिय रूप से सहायता नहीं दी जाएगी. ऐसा हो सकता है कि पहले के वर्शन भी काम करें, लेकिन उन्हें सक्रिय रूप से सपोर्ट नहीं किया जाएगा.

  • (सिर्फ़ Apple प्लैटफ़ॉर्म के लिए) इन्हें इंस्टॉल करें:

    • Xcode 13.3.1 या इसके बाद का वर्शन
    • CocoaPods 1.12.0 या इसके बाद का वर्शन
  • पक्का करें कि आपका Unity प्रोजेक्ट इन ज़रूरी शर्तों को पूरा करता हो:

    • iOS के लिए — iOS 13 या उसके बाद के वर्शन को टारगेट करता है
    • tvOS के लिए - tvOS 13 या इसके बाद के वर्शन को टारगेट करता है
    • Android के लिए — एपीआई लेवल 21 (Lollipop) या इससे बाद के वर्शन को टारगेट करता हो
  • अपने ऐप्लिकेशन को चलाने के लिए, किसी फ़िज़िकल डिवाइस को सेट अप करें या एम्युलेटर का इस्तेमाल करें.

    • Apple प्लैटफ़ॉर्म के लिए — कोई फ़िज़िकल डिवाइस सेट अप करें या iOS या tvOS सिम्युलेटर का इस्तेमाल करें.

    • Android के लिएएम्युलेटर को Google Play के साथ एम्युलेटर इमेज का इस्तेमाल करना होगा.

अगर आपके पास पहले से कोई Unity प्रोजेक्ट नहीं है और आपको सिर्फ़ Firebase प्रॉडक्ट आज़माना है, तो हमारे क्विकस्टार्ट सैंपल में से कोई एक डाउनलोड करें.

पहला चरण: Firebase प्रोजेक्ट बनाना

अपने Unity प्रोजेक्ट में Firebase जोड़ने से पहले, आपको एक Firebase प्रोजेक्ट बनाना होगा, ताकि उसे अपने Unity प्रोजेक्ट से कनेक्ट किया जा सके. Firebase प्रोजेक्ट के बारे में ज़्यादा जानने के लिए, Firebase प्रोजेक्ट के बारे में जानकारी पर जाएं.

दूसरा चरण: अपने ऐप्लिकेशन को Firebase के साथ रजिस्टर करना

अपने Firebase प्रोजेक्ट से कनेक्ट करने के लिए, एक या उससे ज़्यादा ऐप्लिकेशन या गेम रजिस्टर किए जा सकते हैं.

  1. Firebase कंसोल पर जाएं.

  2. सेटअप वर्कफ़्लो लॉन्च करने के लिए, प्रोजेक्ट की खास जानकारी वाले पेज के बीच में मौजूद Unity आइकॉन () पर क्लिक करें.

    अगर आपने पहले ही अपने Firebase प्रोजेक्ट में कोई ऐप्लिकेशन जोड़ लिया है, तो प्लैटफ़ॉर्म के विकल्प देखने के लिए, ऐप्लिकेशन जोड़ें पर क्लिक करें.

  3. अपने Unity प्रोजेक्ट का वह बिल्ड टारगेट चुनें जिसे आपको रजिस्टर करना है. इसके अलावा, दोनों टारगेट को एक साथ रजिस्टर करने का विकल्प भी चुना जा सकता है.

  4. अपने Unity प्रोजेक्ट के प्लैटफ़ॉर्म के हिसाब से आईडी डालें.

    • iOS के लिएiOS बंडल आईडी फ़ील्ड में, अपने Unity प्रोजेक्ट का iOS आईडी डालें.

    • Android के लिएAndroid पैकेज का नाम फ़ील्ड में, अपने Unity प्रोजेक्ट का Android आईडी डालें.
      पैकेज का नाम और ऐप्लिकेशन आईडी शब्दों का इस्तेमाल अक्सर एक-दूसरे की जगह पर किया जाता है.

  5. (ज़रूरी नहीं) अपने Unity प्रोजेक्ट के प्लैटफ़ॉर्म के हिसाब से निकनेम डालें.
    ये निकनेम, इंटरनल तौर पर इस्तेमाल किए जाते हैं. साथ ही, ये सिर्फ़ Firebase कंसोल में आपको दिखते हैं.

  6. ऐप्लिकेशन रजिस्टर करें पर क्लिक करें.

तीसरा चरण: Firebase कॉन्फ़िगरेशन फ़ाइलें जोड़ना

  1. Firebase कंसोल सेटअप वर्कफ़्लो में, अपने प्लैटफ़ॉर्म के हिसाब से Firebase कॉन्फ़िगरेशन फ़ाइलें पाएं.

    • iOS के लिएGoogleService-Info.plist डाउनलोड करें पर क्लिक करें.

    • Android के लिएgoogle-services.json डाउनलोड करें पर क्लिक करें.

  2. अपने यूनिटी प्रोजेक्ट की प्रोजेक्ट विंडो खोलें. इसके बाद, कॉन्फ़िगरेशन फ़ाइलें Assets फ़ोल्डर में ले जाएं.

  3. Firebase कंसोल में वापस जाकर, सेटअप वर्कफ़्लो में आगे बढ़ें पर क्लिक करें.

चौथा चरण: Firebase Unity SDK टूल जोड़ना

  1. Firebase Console में, Firebase Unity SDK डाउनलोड करें पर क्लिक करें. इसके बाद, एसडीके को किसी सुविधाजनक जगह पर अनज़िप करें.

    • Firebase Unity एसडीके को किसी भी समय फिर से डाउनलोड किया जा सकता है.

    • Firebase Unity एसडीके टूल, प्लैटफ़ॉर्म के हिसाब से नहीं होता.

  2. खुले हुए यूनिटी प्रोजेक्ट में, ऐसेट > पैकेज इंपोर्ट करें > कस्टम पैकेज पर जाएं.

  3. अनज़िप किए गए SDK टूल से, Firebase के उन प्रॉडक्ट को चुनें जिन्हें आपको अपने ऐप्लिकेशन में इस्तेमाल करना है.

    Analytics चालू किया गया

    • Google Analytics के लिए Firebase पैकेज जोड़ें: 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 विंडो में, Import पर क्लिक करें.

  5. Firebase कंसोल में वापस जाकर, सेटअप वर्कफ़्लो में आगे बढ़ें पर क्लिक करें.

पांचवां चरण: Google Play services के वर्शन से जुड़ी ज़रूरी शर्तों की पुष्टि करना

Android के लिए Firebase Unity SDK टूल के कुछ प्रॉडक्ट के लिए, Google Play services की ज़रूरत होती है. जानें कि किन प्रॉडक्ट के लिए यह डिपेंडेंसी ज़रूरी है. उन प्रॉडक्ट का इस्तेमाल करने से पहले, Google Play services को अपडेट करना ज़रूरी है.

अपने ऐप्लिकेशन की शुरुआत में, यहां दिया गया using स्टेटमेंट और इनीशियलाइज़ेशन कोड जोड़ें. एसडीके में मौजूद किसी भी अन्य तरीके को कॉल करने से पहले, Google Play services के ज़रूरी वर्शन की जांच की जा सकती है. साथ ही, इसे अपडेट भी किया जा सकता है.

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 एडिटर और डेस्कटॉप प्लैटफ़ॉर्म पर टेस्ट करना बहुत आसान होता है. इसके बाद, उसे मोबाइल डिवाइसों पर डिप्लॉय और टेस्ट किया जाता है. इस वर्कफ़्लो को सपोर्ट करने के लिए, हम Firebase Unity SDK टूल का एक सबसेट देते हैं. यह Windows, macOS, Linux, और Unity एडिटर में काम कर सकता है.

  1. डेस्कटॉप प्लैटफ़ॉर्म के लिए Unity प्रोजेक्ट सेट अप करें. इसके लिए, मोबाइल प्लैटफ़ॉर्म के लिए दिए गए निर्देशों का पालन करें. Firebase में अपना ऐप्लिकेशन रजिस्टर करें से शुरू करें.

  2. Unity IDE में अपना Unity प्रोजेक्ट चलाएं या डेस्कटॉप के लिए अपना Unity प्रोजेक्ट बनाएं.

  3. (ज़रूरी नहीं) अपने Unity प्रोजेक्ट को एडिट मोड में चलाएं.

    Firebase Unity SDK को Unity के एडिट मोड में भी चलाया जा सकता है. इससे एडिटर प्लगिन में इसका इस्तेमाल किया जा सकता है.

    1. Editor में इस्तेमाल किया जाने वाला FirebaseApp बनाते समय, डिफ़ॉल्ट इंस्टेंस का इस्तेमाल न करें.

    2. इसके बजाय, FirebaseApp.Create() कॉल को कोई यूनीक नाम दें.

      ऐसा इसलिए ज़रूरी है, ताकि Unity IDE और आपके Unity प्रोजेक्ट में इस्तेमाल किए गए इंस्टेंस के बीच विकल्पों में कोई टकराव न हो.

Firebase के साथ काम करने वाले प्रॉडक्ट

रेफ़रंस दस्तावेज़ में, Unity Firebase लाइब्रेरी के बारे में ज़्यादा जानें.

मोबाइल के लिए उपलब्ध Firebase लाइब्रेरी

Firebase Unity SDK, Apple और Android पर Firebase के इन प्रॉडक्ट के साथ काम करता है:

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
Dynamic Links FirebaseDynamicLinks.unitypackage
(सुझाया गया) FirebaseAnalytics.unitypackage
Realtime Database FirebaseDatabase.unitypackage
Remote Config FirebaseRemoteConfig.unitypackage
(सुझाया गया) FirebaseAnalytics.unitypackage

डेस्कटॉप के लिए उपलब्ध Firebase लाइब्रेरी

Firebase Unity SDK में, कुछ प्रॉडक्ट के लिए डेस्कटॉप वर्कफ़्लो की सुविधा शामिल है. इससे 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 के लिए ऐप्लिकेशन बनाते समय, बाकी की डेस्कटॉप लाइब्रेरी को स्टब (गैर-फ़ंक्शन वाली) के तौर पर उपलब्ध कराता है, ताकि आपको आसानी हो. इसलिए, डेस्कटॉप को टारगेट करने के लिए, आपको कोड को शर्तों के साथ कंपाइल करने की ज़रूरत नहीं है.

अगले चरण