Google is committed to advancing racial equity for Black communities. See how.
इस पेज का अनुवाद Cloud Translation API से किया गया है.
Switch to English

अपने C ++ प्रोजेक्ट Firebase जोड़ें

हमारे Firebase C ++ SDK के साथ अपने C ++ गेम्स को पावर करें जो iOS और Android के लिए Firebase के शीर्ष पर C ++ इंटरफ़ेस प्रदान करते हैं।

किसी भी मंच-मूल कोड को लिखने के बिना, अपने सी ++ कोड से फायरबेस को पूरी तरह से एक्सेस करें। Firebase SDK, C ++ डेवलपर्स के लिए अधिक परिचित इंटरफ़ेस में Firebase द्वारा उपयोग की जाने वाली कई भाषा-विशिष्ट मुहावरों का भी अनुवाद करता है।

हमारे Firebase गेम्स पेज पर Firebase के साथ अपने गेम को पावर करने के बारे में अधिक जानकारी प्राप्त करें।

आपके C ++ प्रोजेक्ट में पहले से ही Firebase जोड़ा गया है? सुनिश्चित करें कि आप Firebase C ++ SDK के नवीनतम संस्करण का उपयोग कर रहे हैं।

आवश्यक शर्तें

  • निम्नलिखित स्थापित करें:

    • Xcode 10.3.0 या बाद का
    • कोकोआपोड्स 1.4.0 या बाद में
  • सुनिश्चित करें कि आपका प्रोजेक्ट iOS 8 या बाद का लक्ष्य रखता है।

  • एक भौतिक iOS डिवाइस सेट करें या अपने ऐप को चलाने के लिए iOS सिम्युलेटर का उपयोग करें।

  • अपने Google खाते का उपयोग करके Firebase में साइन इन करें

चरण 2 : एक फायरबेस प्रोजेक्ट बनाएं

इससे पहले कि आप अपने C ++ प्रोजेक्ट में Firebase जोड़ सकें, आपको अपने C ++ प्रोजेक्ट से कनेक्ट करने के लिए Firebase प्रोजेक्ट बनाने की आवश्यकता है। फायरबेस परियोजनाओं के बारे में अधिक जानने के लिए फायरबेस प्रोजेक्ट्स को समझें

चरण 3 : अपने ऐप को फायरबेस के साथ पंजीकृत करें

आपके पास फायरबेस प्रोजेक्ट होने के बाद, आप इसमें अपना iOS ऐप जोड़ सकते हैं।

Firebase प्रोजेक्ट में ऐप्स को जोड़ने के बारे में अधिक जानने के लिए Firebase प्रोजेक्ट्स को समझें , जिसमें कई बिल्ड वेरिएंट्स को हैंडल करना शामिल है।

  1. फायरबेस कंसोल पर जाएं।

  2. प्रोजेक्ट अवलोकन पृष्ठ के केंद्र में, सेटअप वर्कफ़्लो को लॉन्च करने के लिए iOS आइकन ( ) पर क्लिक करें।

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

  3. IOS बंडल आईडी फ़ील्ड में अपने ऐप के बंडल आईडी को दर्ज करें।

  4. (वैकल्पिक) अन्य एप्लिकेशन जानकारी दर्ज करें: ऐप उपनाम और ऐप स्टोर आईडी

  5. रजिस्टर ऐप पर क्लिक करें।

चरण 4 : फायरबेस कॉन्फ़िगरेशन फ़ाइल जोड़ें

  1. अपनी Firebase iOS कॉन्फ़िग फ़ाइल प्राप्त करने के लिए GoogleService-Info.plist डाउनलोड करें पर क्लिक करें

  2. अपनी C ++ प्रोजेक्ट को एक IDE में खोलें, फिर अपनी config फाइल को अपने C ++ प्रोजेक्ट की जड़ में खींचें।

  3. यदि संकेत दिया गया है, तो सभी लक्ष्यों के लिए कॉन्फ़िग फ़ाइल जोड़ने का चयन करें।

आप फायरबेस कंसोल में सेट अप कार्यों के साथ कर रहे हैं। नीचे Firebase C ++ SDKs जोड़ना जारी रखें।

चरण 5 : Firebase C ++ SDKs जोड़ें

इस अनुभाग में दिए गए चरण इस बात का एक उदाहरण है कि अपने फायरबेस सी ++ प्रोजेक्ट में समर्थित फायरबेस उत्पादों को कैसे जोड़ा जाए।

  1. फायरबेस सी ++ एसडीके डाउनलोड करें, फिर एसडीके को कहीं सुविधाजनक रूप से अनज़िप करें।

    Firebase C ++ SDK प्लेटफ़ॉर्म-विशिष्ट नहीं है, लेकिन इसमें प्लेटफ़ॉर्म-विशिष्ट लाइब्रेरी शामिल हैं।

  2. Unzipped SDK से Firebase पॉड्स जोड़ें।

    1. यदि आपके पास पहले से कोई नहीं है तो एक पॉडफाइल बनाएं:

      cd your-app-directory
      pod init

    2. अपने पॉडफाइल में, फायरबेस पॉड्स को जोड़ें जिसे आप अपने ऐप में उपयोग करना चाहते हैं।

      विश्लेषिकी सक्षम

      # Add the Firebase pod for Google Analytics
      pod 'Firebase/Analytics'
      # Add the pods for any other Firebase products you want to use in your app # For example, to use Firebase Authentication and Firebase Realtime Database pod 'Firebase/Auth' pod 'Firebase/Database'

      विश्लेषिकी सक्षम नहीं है

      # Add the pods for the Firebase products you want to use in your app
      # For example, to use Firebase Authentication and Firebase Realtime Database
      pod 'Firebase/Auth'
      pod 'Firebase/Database'
    3. पॉड्स स्थापित करें, फिर Xcode में .xcworkspace फ़ाइल खोलें।

      pod install
      open your-app.xcworkspace

  3. Unzipped SDK से Firebase चौखटे को जोड़ें।

    इन रूपरेखाओं को जोड़ने का सबसे आसान तरीका आमतौर पर उन्हें Xcode के प्रोजेक्ट नेविगेटर फलक (डिफ़ॉल्ट रूप से दूर-बाएँ फलक, या Xcode के ऊपरी-बाएँ में फ़ाइल आइकन पर क्लिक करें) में सीधे Finder विंडो से खींचना है।

    1. Firebase C ++ फ्रेमवर्क firebase.framework जोड़ें, जो किसी भी Firebase उत्पाद का उपयोग करने के लिए आवश्यक है।

    2. प्रत्येक फायरबेस उत्पाद के लिए रूपरेखा जोड़ें जिसे आप उपयोग करना चाहते हैं। उदाहरण के लिए, Firebase प्रमाणीकरण का उपयोग करने के लिए, firebase_auth.framework जोड़ें।

  4. फायरबेस कंसोल में वापस, सेटअप वर्कफ़्लो में, अगला क्लिक करें।

  5. यदि आपने Analytics जोड़ा है, तो Firebase को सत्यापन भेजने के लिए अपना ऐप चलाएं कि आपने सफलतापूर्वक Firebase को एकीकृत कर लिया है। अन्यथा, आप इस सत्यापन चरण को छोड़ सकते हैं।

    आपका डिवाइस लॉग फायरबेस सत्यापन को प्रदर्शित करेगा कि आरंभीकरण पूरा हो गया है। यदि आप अपने ऐप को नेटवर्क एक्सेस करने वाले एमुलेटर पर चलाते हैं, तो फायरबेस कंसोल आपको सूचित करता है कि आपका ऐप कनेक्शन पूरा हो गया है।

तम तैयार हो! आपका C ++ ऐप पंजीकृत है और फायरबेस उत्पादों का उपयोग करने के लिए कॉन्फ़िगर किया गया है।

उपलब्ध पुस्तकालय

संदर्भ प्रलेखन में और GitHub पर हमारे ओपन-सोर्स SDK रिलीज़ में C ++ फायरबेस लाइब्रेरी के बारे में अधिक जानें।

IOS के लिए उपलब्ध लाइब्रेरी

ध्यान दें कि Android के लिए C ++ पुस्तकालय इस सेटअप पृष्ठ के Android संस्करण पर सूचीबद्ध हैं।

प्रत्येक फायरबेस उत्पाद की अलग-अलग निर्भरताएं हैं। अपने पॉडफाइल और सी ++ प्रोजेक्ट के लिए वांछित फायरबेस उत्पाद के लिए सभी सूचीबद्ध निर्भरताएं जोड़ना सुनिश्चित करें।

फायरबेस उत्पाद चौखटे और फली
AdMob (आवश्यक) firebase.framework
firebase_admob.framework
(आवश्यक) firebase_analytics.framework

pod 'Firebase/AdMob', '6.24.0'
(आवश्यक) pod 'Firebase/Analytics', '6.24.0'
एनालिटिक्स (आवश्यक) firebase.framework
firebase_analytics.framework

pod 'Firebase/Analytics', '6.24.0'
प्रमाणीकरण (आवश्यक) firebase.framework
firebase_auth.framework

pod 'Firebase/Auth', '6.24.0'
क्लाउड फायरस्टार (अल्फा) (आवश्यक) firebase.framework
firebase_firestore.framework
firebase_auth.framework

pod 'Firebase/Firestore', '6.24.0'
pod 'Firebase/Auth', '6.24.0'
क्लाउड फ़ंक्शंस (आवश्यक) firebase.framework
firebase_functions.framework

pod 'Firebase/Functions', '6.24.0'
क्लाउड मैसेजिंग (आवश्यक) firebase.framework
firebase_messaging.framework
(अनुशंसित) firebase_analytics.framework

pod 'Firebase/Messaging', '6.24.0'
(अनुशंसित) pod 'Firebase/Analytics', '6.24.0'
बादल भंडारण (आवश्यक) firebase.framework
firebase_storage.framework

pod 'Firebase/Storage', '6.24.0'
गतिशील लिंक (आवश्यक) firebase.framework
firebase_dynamic_links.framework
(अनुशंसित) firebase_analytics.framework

pod 'Firebase/DynamicLinks', '6.24.0'
(अनुशंसित) pod 'Firebase/Analytics', '6.24.0'
रियलटाइम डेटाबेस (आवश्यक) firebase.framework
firebase_database.framework

pod 'Firebase/Database', '6.24.0'
रिमोट कॉन्फ़िगरेशन (आवश्यक) firebase.framework
firebase_remote_config.framework
(अनुशंसित) firebase_analytics.framework

pod 'Firebase/RemoteConfig', '6.24.0'
(अनुशंसित) pod 'Firebase/Analytics', '6.24.0'

मोबाइल सेटअप के लिए अतिरिक्त जानकारी

विधि स्वाइलिंग

IOS पर, कुछ एप्लिकेशन ईवेंट (जैसे URL खोलना और सूचनाएं प्राप्त करना) के लिए विशिष्ट विधियों को लागू करने के लिए आपके एप्लिकेशन प्रतिनिधि की आवश्यकता होती है। उदाहरण के लिए, एक अधिसूचना प्राप्त करने के लिए आपके आवेदन प्रतिनिधि को application:didReceiveRemoteNotification: को लागू करने की आवश्यकता हो सकती है application:didReceiveRemoteNotification: :। क्योंकि प्रत्येक iOS एप्लिकेशन का अपना ऐप डेलिगेट होता है, फायरबेस ने विधि स्विज़लिंग का उपयोग किया है, जो कि आपके द्वारा लागू किए गए किसी भी के अलावा अपने स्वयं के हैंडलर को संलग्न करने के लिए एक विधि को दूसरे के साथ बदलने की अनुमति देता है।

डायनेमिक लिंक्स और क्लाउड मैसेजिंग लाइब्रेरी को विधि स्वाइलिंग का उपयोग करके हैंडलर को एप्लिकेशन प्रतिनिधि को संलग्न करना होगा। यदि आप लोड समय पर इनमें से किसी भी Firebase उत्पाद का उपयोग कर रहे हैं, तो Firebase आपके AppDelegate वर्ग की पहचान करेगा और उस पर आवश्यक विधियों को स्विज़ करेगा, जो आपके मौजूदा पद्धति कार्यान्वयन के लिए कॉल बैक कर रहा है।

डेस्कटॉप वर्कफ़्लो सेट करें ( बीटा )

जब आप कोई गेम बना रहे होते हैं, तो अक्सर डेस्कटॉप प्लेटफ़ॉर्म पर अपने गेम का परीक्षण करना बहुत आसान होता है, फिर बाद में विकास में मोबाइल उपकरणों पर तैनात और परीक्षण करना। इस वर्कफ़्लो का समर्थन करने के लिए, हम Firebase C ++ SDKs का उपसमूह प्रदान करते हैं जो Windows, macOS, Linux और C ++ संपादक के भीतर से चल सकता है।

  1. डेस्कटॉप वर्कफ़्लोज़ के लिए, आपको निम्न कार्य पूरे करने होंगे:

    1. CMake के लिए अपने C ++ प्रोजेक्ट को कॉन्फ़िगर करें।
    2. फायरबेस प्रोजेक्ट बनाएं
    3. Firebase के साथ अपना ऐप (iOS या Android) रजिस्टर करें
    4. एक मोबाइल प्लेटफ़ॉर्म फ़ायरबेस कॉन्फ़िगरेशन फ़ाइल जोड़ें
  2. फायरबेस कॉन्फ़िगरेशन फ़ाइल का डेस्कटॉप संस्करण बनाएँ:

    • यदि आपने Android google-services.json फ़ाइल जोड़ी है - जब आप अपना ऐप चलाते हैं, तो Firebase इस मोबाइल फ़ाइल का पता लगाता है, तो स्वचालित रूप से एक डेस्कटॉप Firebase config फ़ाइल ( google-services-desktop.json ) उत्पन्न करता है।

    • यदि आपने iOS GoogleService-Info.plist फ़ाइल जोड़ी है - इससे पहले कि आप अपना ऐप चलाएं, आपको इस मोबाइल फ़ाइल को डेस्कटॉप फायरबेस कॉन्फ़िगरेशन फ़ाइल में बदलने की आवश्यकता है। फ़ाइल को परिवर्तित करने के लिए, अपनी GoogleService-Info.plist फ़ाइल के समान निर्देशिका से निम्न कमांड चलाएँ:

      generate_xml_from_google_services_json.py --plist -i GoogleService-Info.plist

    इस डेस्कटॉप कॉन्फ़िगरेशन फ़ाइल में C ++ प्रोजेक्ट आईडी है जो आपने फायरबेस कंसोल सेटअप वर्कफ़्लो में दर्ज किया है। कॉन्फिग फाइल्स के बारे में अधिक जानने के लिए फायरबेस प्रोजेक्ट्स को समझें

  3. अपने C ++ प्रोजेक्ट में Firebase SDKs जोड़ें।

    नीचे दिए गए चरण आपके C ++ प्रोजेक्ट में किसी समर्थित Firebase उत्पाद को जोड़ने के तरीके के रूप में कार्य करते हैं। इस उदाहरण में, हम फायरबेस प्रमाणीकरण और फायरबेस रियलटाइम डेटाबेस को जोड़ने के माध्यम से चलते हैं।

    1. अपने FIREBASE_CPP_SDK_DIR पर्यावरण चर को अनजिप किए गए Firebase C ++ SDK के स्थान पर सेट करें।

    2. अपनी परियोजना के CMakeLists.txt फ़ाइल में, CMakeLists.txt उत्पादों के लिए पुस्तकालयों सहित निम्नलिखित सामग्री जोड़ें, जिन्हें आप उपयोग करना चाहते हैं। उदाहरण के लिए, फायरबेस प्रमाणीकरण और फायरबेस रियलटाइम डेटाबेस का उपयोग करने के लिए:

      # Add Firebase libraries to the target using the function from the SDK.
      add_subdirectory(${FIREBASE_CPP_SDK_DIR} bin/ EXCLUDE_FROM_ALL)
      
      # The Firebase C++ library `firebase_app` is required,
      # and it must always be listed last.
      
      # Add the Firebase SDKs for the products you want to use in your app
      # For example, to use Firebase Authentication and Firebase Realtime Database
      set(firebase_libs firebase_auth firebase_database firebase_app)
      target_link_libraries(${target_name} "${firebase_libs}")
      
  4. अपना C ++ ऐप चलाएं।

उपलब्ध पुस्तकालय (डेस्कटॉप)

Firebase C ++ SDK में सुविधाओं के सबसेट के लिए डेस्कटॉप वर्कफ़्लो समर्थन शामिल है, फ़ायरबॉज़ के कुछ हिस्सों को विंडोज, मैकओएस और लिनक्स पर स्टैंडअलोन डेस्कटॉप बिल्ड में उपयोग करने में सक्षम बनाता है।

फायरबेस उत्पाद पुस्तकालय संदर्भ (CMake का उपयोग करके)
प्रमाणीकरण firebase_auth
(आवश्यक) firebase_app
क्लाउड फायरस्टोर (अल्फा) firebase_firestore
firebase_auth
firebase_app
क्लाउड फ़ंक्शंस firebase_functions
(आवश्यक) firebase_app
बादल भंडारण firebase_storage
(आवश्यक) firebase_app
रियलटाइम डेटाबेस firebase_database
(आवश्यक) firebase_app
रिमोट कॉन्फ़िगरेशन firebase_remote_config
(आवश्यक) firebase_app

फायरबेस विंडोज़, मैकओएस और लिनक्स के लिए निर्माण के दौरान सुविधा के लिए शेष डेस्कटॉप पुस्तकालयों को स्टब (गैर-कार्यात्मक) कार्यान्वयन के रूप में प्रदान करता है। इसलिए, आपको डेस्कटॉप को लक्षित करने के लिए सशर्त रूप से कोड संकलित करने की आवश्यकता नहीं है।

रीयलटाइम डेटाबेस डेस्कटॉप

डेस्कटॉप के लिए रीयलटाइम डेटाबेस एसडीके आपके डेटाबेस तक पहुंचने के लिए आरईएसटी का उपयोग करता है, इसलिए आपको डेस्कटॉप पर Query::OrderByChild() साथ उपयोग किए जाने वाले इंडेक्स की घोषणा करनी होगी या आपके श्रोता विफल हो जाएंगे।

डेस्कटॉप सेटअप के लिए अतिरिक्त जानकारी

विंडोज लाइब्रेरी

विंडोज के लिए, पुस्तकालय संस्करण निम्नलिखित के आधार पर प्रदान किए जाते हैं:

  • प्लेटफ़ॉर्म बनाएँ: 32-बिट (x86) बनाम 64-बिट (x64) मोड
  • विंडोज रनटाइम वातावरण: मल्टीथ्रेडेड / एमटी बनाम मल्टीथ्रेडेड डीएलएल / एमडी
  • लक्ष्य: रिलीज़ बनाम डिबग

ध्यान दें कि निम्न पुस्तकालयों का दृश्य स्टूडियो 2015 और 2017 का उपयोग करके परीक्षण किया गया था।

विंडोज पर C ++ डेस्कटॉप एप्स बनाते समय, निम्नलिखित विंडोज एसडीके लाइब्रेरी को अपने प्रोजेक्ट से लिंक करें। अधिक जानकारी के लिए अपने संकलक प्रलेखन से परामर्श करें।

फायरबेस सी ++ लाइब्रेरी Windows SDK लाइब्रेरी निर्भरताएँ
प्रमाणीकरण advapi32, ws2_32, crypt32
क्लाउड फायरस्टार advapi32, ws2_32, crypt32, rpcrt4, ole32, shell32
क्लाउड फ़ंक्शंस advapi32, ws2_32, crypt32, rpcrt4, ole32
बादल भंडारण advapi32, ws2_32, crypt32
रियलटाइम डेटाबेस advapi32, ws2_32, crypt32, iphlpapi, psapi, userenv
रिमोट कॉन्फ़िगरेशन advapi32, ws2_32, crypt32, rpcrt4, ole32

macOS लाइब्रेरी

MacOS (डार्विन) के लिए, 64-बिट (x86_64) प्लेटफ़ॉर्म के लिए लाइब्रेरी संस्करण दिए गए हैं। आपकी सुविधा के लिए फ्रेमवर्क भी उपलब्ध कराया गया है।

ध्यान दें कि XOS 10.3.0 का उपयोग करके macOS पुस्तकालयों का परीक्षण किया गया है।

MacOS पर C ++ डेस्कटॉप एप्लिकेशन बनाते समय, अपनी परियोजना के लिए निम्न लिंक करें:

  • pthread सिस्टम लाइब्रेरी
  • CoreFoundation macOS सिस्टम फ्रेमवर्क
  • Foundation macOS सिस्टम ढांचा
  • Security macOS सिस्टम ढांचा
  • GSS macOS सिस्टम ढांचा
  • Kerberos macOS सिस्टम ढांचा
  • SystemConfiguration macOS सिस्टम फ्रेमवर्क

अधिक जानकारी के लिए अपने संकलक प्रलेखन से परामर्श करें।

लिनक्स लाइब्रेरी

लिनक्स के लिए, पुस्तकालय संस्करण 32-बिट (i386) और 64-बिट (x86_64) प्लेटफार्मों के लिए प्रदान किए जाते हैं।

ध्यान दें कि उबंटू पर जीसीसी 4.8.0, जीसीसी 7.2.0 और क्लैंग 5.0 का उपयोग करके लिनक्स पुस्तकालयों का परीक्षण किया गया था।

लिनक्स पर C ++ डेस्कटॉप एप्स का निर्माण करते समय, अपने सिस्टम के लिए pthread सिस्टम लाइब्रेरी को लिंक करें। अधिक जानकारी के लिए अपने संकलक प्रलेखन से परामर्श करें। यदि आप GCC 5 या बाद में निर्माण कर रहे हैं, तो -D_GLIBCXX_USE_CXX11_ABI=0 को परिभाषित करें।

अगला कदम