Google is committed to advancing racial equity for Black communities. See how.
این صفحه به‌وسیله ‏Cloud Translation API‏ ترجمه شده است.
Switch to English

Firebase را به + پروژه خود اضافه کنید

بازی های C ++ خود را با SDK های Firebase C ++ ما که رابط C ++ در بالای Firebase برای iOS و Android ارائه می دهند ، تقویت کنید.

بدون نیاز به نوشتن کد محلی برای بستر های نرم افزاری ، کاملاً از کد C ++ خود به Firebase دسترسی پیدا کنید. Firebase SDK همچنین بسیاری از اصطلاحات خاص زبان را که Firebase از آنها استفاده می کند ، به رابطی که برای توسعه دهندگان C ++ آشناتر است ترجمه می کند.

در صفحه بازی های Firebase ما اطلاعات بیشتری در مورد قدرت بخشیدن به بازی های خود با Firebase کسب کنید.

قبلاً Firebase را به پروژه C ++ خود اضافه کرده اید؟ اطمینان حاصل کنید که از آخرین نسخه SDK Firebase C ++ استفاده می کنید .

پیش نیازها

  • موارد زیر را نصب کنید:

    • Xcode 10.3.0 یا بالاتر
    • CocoaPods 1.4.0 یا بالاتر
  • اطمینان حاصل کنید که پروژه شما iOS 8 یا بالاتر را هدف قرار داده است.

  • برای اجرای برنامه خود ، یک دستگاه فیزیکی iOS راه اندازی کنید یا از شبیه ساز iOS استفاده کنید.

  • با استفاده از حساب Google خود وارد Firebase شوید.

مرحله 2 : یک پروژه Firebase ایجاد کنید

قبل از اینکه بتوانید Firebase را به پروژه C ++ خود اضافه کنید ، باید یک پروژه Firebase ایجاد کنید تا به پروژه C ++ خود متصل شوید. برای کسب اطلاعات بیشتر در مورد پروژه های Firebase ، از پروژه های Firebase درک کنید.

مرحله 3 : برنامه خود را با Firebase ثبت کنید

بعد از اینکه یک پروژه Firebase دارید ، می توانید برنامه iOS خود را به آن اضافه کنید.

برای کسب اطلاعات بیشتر در مورد بهترین روش ها و ملاحظات برای افزودن برنامه ها به یک پروژه Firebase ، از جمله نحوه مدیریت چندین نسخه ساخت ، از پروژه های Firebase درک کنید.

  1. به کنسول Firebase بروید.

  2. در مرکز صفحه نمای کلی پروژه ، روی نماد iOS ( ) کلیک کنید تا گردش کار راه اندازی شود.

    اگر قبلاً برنامه ای را به پروژه Firebase خود اضافه کرده اید ، برای نمایش گزینه های پلت فرم ، روی Add app کلیک کنید.

  3. شناسه بسته نرم افزاری برنامه خود را در قسمت شناسه بسته نرم افزاری iOS وارد کنید.

  4. (اختیاری) سایر اطلاعات برنامه را وارد کنید: نام مستعار برنامه و شناسه فروشگاه App .

  5. ثبت برنامه را کلیک کنید.

مرحله 4 : فایل پیکربندی Firebase را اضافه کنید

  1. برای دریافت فایل پیکربندی Firebase iOS خود ، روی بارگیری GoogleService-Info.plist کلیک کنید.

  2. پروژه C ++ خود را در IDE باز کنید ، سپس فایل پیکربندی خود را به ریشه پروژه C ++ خود بکشید.

  3. در صورت درخواست ، برای افزودن پرونده پیکربندی به همه اهداف انتخاب کنید.

شما با کارهای تنظیم شده در کنسول Firebase به پایان رسید. به افزودن SDK های Firebase C ++ در زیر ادامه دهید.

مرحله 5 : SDK های Firebase C ++ را اضافه کنید

مراحل این بخش مثالی از نحوه افزودن محصولات پشتیبانی شده Firebase به پروژه Firebase C ++ شما است.

  1. Firebase C ++ SDK را بارگیری کنید ، سپس SDK را در جایی که راحت است از حالت فشرده خارج کنید.

    Firebase C ++ SDK مخصوص پلتفرم نیست ، اما شامل کتابخانه های مخصوص پلتفرم است.

  2. غلاف های Firebase را از SDK فشرده نشده اضافه کنید.

    1. اگر از قبل یک Podfile ندارید:

      cd your-app-directory
      pod init

    2. به Podfile خود ، غلافهای Firebase را که می خواهید در برنامه خود استفاده کنید اضافه کنید.

      تجزیه و تحلیل فعال است

      # 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. غلافها را نصب کنید ، سپس پرونده .xcworkspace را در Xcode باز کنید.

      pod install
      open your-app.xcworkspace

  3. چارچوب های Firebase را از SDK فشرده نشده اضافه کنید.

    ساده ترین راه برای افزودن این چارچوب ها معمولاً کشیدن آنها از یک پنجره Finder به طور مستقیم به صفحه Project Navigator Xcode است (به طور پیش فرض صفحه سمت چپ چپ ؛ یا روی نماد پرونده در سمت چپ بالای Xcode کلیک کنید).

    1. چارچوب Firebase C ++ firebase.framework ، که برای استفاده از هر محصول Firebase مورد نیاز است.

    2. چارچوب مربوط به هر محصول Firebase را که می خواهید استفاده کنید اضافه کنید. به عنوان مثال ، برای استفاده از تأیید اعتبار Firebase ، firebase_auth.framework اضافه کنید.

  4. دوباره به کنسول Firebase ، در گردش کار راه اندازی ، روی Next کلیک کنید.

  5. اگر Analytics را اضافه کردید ، برنامه خود را اجرا کنید تا تأیید اینکه Firebase را با موفقیت ادغام کرده اید به Firebase ارسال شود. در غیر این صورت ، می توانید از این مرحله تأیید صرف نظر کنید.

    گزارش های دستگاه شما تأیید Firebase را نشان می دهد که مراحل اولیه کامل شده است. اگر برنامه خود را روی یک شبیه ساز که به شبکه دسترسی دارد اجرا کردید ، کنسول Firebase به شما اطلاع می دهد که اتصال برنامه شما کامل است.

همه چیز آماده است! برنامه C ++ شما برای استفاده از محصولات Firebase ثبت و پیکربندی شده است.

کتابخانه های موجود

در مورد اسناد مرجع C ++ Firebase در اسناد مرجع و در نسخه منبع باز SDK در GitHub اطلاعات بیشتری کسب کنید.

کتابخانه های موجود برای iOS

توجه داشته باشید که کتابخانه های C ++ برای Android در نسخه Android این صفحه نصب لیست شده اند .

هر محصول Firebase وابستگی های مختلفی دارد. اطمینان حاصل کنید که تمام وابستگی های ذکر شده برای محصول مورد نظر Firebase را به پروژه Podfile و C ++ خود اضافه کنید.

محصول Firebase چارچوب ها و غلاف ها
AdMob (لازم) firebase.framework
firebase_admob.framework
(لازم) firebase_analytics.framework

pod 'Firebase/AdMob', '6.32.2'
(لازم) pod 'Firebase/Analytics', '6.32.2'
تجزیه و تحلیل (لازم) firebase.framework
firebase_analytics.framework

pod 'Firebase/Analytics', '6.32.2'
احراز هویت (لازم) firebase.framework
firebase_auth.framework

pod 'Firebase/Auth', '6.32.2'
Cloud Firestore (آلفا) (لازم) firebase.framework
firebase_firestore.framework
firebase_auth.framework

pod 'Firebase/Firestore', '6.32.2'
pod 'Firebase/Auth', '6.32.2'
عملکردهای ابر (لازم) firebase.framework
firebase_functions.framework

pod 'Firebase/Functions', '6.32.2'
پیام رسانی ابری (لازم) firebase.framework
firebase_messaging.framework
(توصیه می شود) firebase_analytics.framework

pod 'Firebase/Messaging', '6.32.2'
(توصیه می شود) pod 'Firebase/Analytics', '6.32.2'
فضای ذخیره ابری (لازم) firebase.framework
firebase_storage.framework

pod 'Firebase/Storage', '6.32.2'
پیوندهای پویا (لازم) firebase.framework
firebase_dynamic_links.framework
(توصیه می شود) firebase_analytics.framework

pod 'Firebase/DynamicLinks', '6.32.2'
(توصیه می شود) pod 'Firebase/Analytics', '6.32.2'
پایگاه داده بیدرنگ (لازم) firebase.framework
firebase_database.framework

pod 'Firebase/Database', '6.32.2'
پیکربندی از راه دور (لازم) firebase.framework
firebase_remote_config.framework
(توصیه می شود) firebase_analytics.framework

pod 'Firebase/RemoteConfig', '6.32.2'
(توصیه می شود) pod 'Firebase/Analytics', '6.32.2'

اطلاعات اضافی برای راه اندازی تلفن همراه

سوئیچینگ روش

در iOS ، برخی از رویدادهای برنامه (مانند باز کردن URL ها و دریافت اعلان ها) به نماینده برنامه شما نیاز دارند که روش های خاصی را پیاده سازی کند. به عنوان مثال ، ممکن است دریافت یک اعلان به نماینده برنامه شما نیاز داشته باشد تا application:didReceiveRemoteNotification: پیاده سازی application:didReceiveRemoteNotification: :. از آنجا که هر برنامه iOS نماینده برنامه خود را دارد ، Firebase از روش swizzling استفاده می کند ، که به شما امکان می دهد یک روش را با روش دیگری جایگزین کنید ، علاوه بر مواردی که ممکن است اجرا کرده باشید ، کنترل کننده های خاص خود را نیز ضمیمه کنید.

کتابخانه های Dynamic Links و Cloud Messaging باید کنترل کننده ها را با استفاده از swizzling روش به نماینده برنامه متصل کنند. اگر از هرکدام از این محصولات Firebase استفاده می کنید ، در زمان بارگذاری ، Firebase کلاس AppDelegate شما را شناسایی می کند و روش های مورد نیاز را روی آن جابجا می کند ، و یک تماس را به پیاده سازی روش موجود خود متصل می کند.

تنظیم گردش کار دسک تاپ ( بتا )

وقتی در حال ایجاد یک بازی هستید ، اغلب می توانید ابتدا بازی خود را روی سیستم عامل های دسک تاپ آزمایش کنید ، سپس در مراحل بعدی توسعه ، روی دستگاه های تلفن همراه مستقر و آزمایش کنید. برای پشتیبانی از این گردش کار ، ما زیرمجموعه ای از SDK های Firebase C ++ را ارائه می دهیم که می تواند در ویندوز ، macOS ، Linux و از داخل ویرایشگر C ++ اجرا شود.

  1. برای گردش کار دسک تاپ ، باید موارد زیر را تکمیل کنید:

    1. پروژه C ++ خود را برای CMake پیکربندی کنید.
    2. یک پروژه Firebase ایجاد کنید
    3. برنامه خود (iOS یا Android) را با Firebase ثبت کنید
    4. یک فایل پیکربندی Firebase برای سیستم عامل تلفن همراه اضافه کنید
  2. یک نسخه دسک تاپ از فایل پیکربندی Firebase ایجاد کنید:

    • اگر پرونده google-services.json Android را اضافه کرده اید - وقتی برنامه خود را اجرا می کنید ، Firebase این فایل تلفن همراه را پیدا می کند ، سپس به طور خودکار یک فایل پیکربندی Firebase دسک تاپ ( google-services-desktop.json ) ایجاد می کند.

    • اگر پرونده iOS GoogleService-Info.plist را اضافه کرده اید - قبل از اجرای برنامه خود ، باید این فایل تلفن همراه را به یک فایل پیکربندی Firebase دسک تاپ تبدیل کنید. برای تبدیل فایل ، دستور زیر را از همان فهرست فایل GoogleService-Info.plist کنید:

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

    این فایل پیکربندی دسک تاپ حاوی شناسه پروژه C ++ است که در گردش کار تنظیم کنسول Firebase وارد کرده اید. برای کسب اطلاعات بیشتر در مورد پرونده های پیکربندی ، به درک پروژه های Firebase مراجعه کنید.

  3. SDK های Firebase را به پروژه C ++ خود اضافه کنید.

    مراحل زیر مثالی از نحوه افزودن هر محصول Firebase پشتیبانی شده به پروژه C ++ شماست. در این مثال ، ما از اضافه کردن پایگاه داده تأیید Firebase و Firebase Realtime استفاده می کنیم.

    1. متغیر محیط FIREBASE_CPP_SDK_DIR خود را روی محل SDK FIREBASE_CPP_SDK_DIR Firebase C ++ تنظیم کنید.

    2. به پرونده CMakeLists.txt پروژه خود ، محتوای زیر را اضافه کنید ، از جمله کتابخانه های محصولات Firebase که می خواهید استفاده کنید. به عنوان مثال ، برای استفاده از Firebase Authentication و Firebase Realtime Database:

      # 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 شامل پشتیبانی گردش کار دسک تاپ برای زیرمجموعه ای از ویژگی ها است ، که امکان استفاده از قسمت های خاصی از Firebase را در ساخت دسک تاپ مستقل در ویندوز ، macOS و Linux فراهم می کند.

محصول Firebase منابع کتابخانه (با استفاده از CMake)
احراز هویت firebase_auth
(الزامی) firebase_app
Cloud Firestore (آلفا) firebase_firestore
firebase_auth
firebase_app
عملکردهای ابر firebase_functions
(الزامی) firebase_app
فضای ذخیره ابری firebase_storage
(لازم) firebase_app
پایگاه داده بیدرنگ firebase_database
(لازم) firebase_app
پیکربندی از راه دور firebase_remote_config
(لازم) firebase_app

Firebase برای راحتی در هنگام ساخت برای ویندوز ، macOS و Linux ، کتابخانه های دسک تاپ باقیمانده را به عنوان پیاده سازی های خرد (غیر کارکردی) فراهم می کند. بنابراین ، برای هدف قرار دادن دسک تاپ نیازی به کامپایل مشروط کد نیست.

دسکتاپ پایگاه داده بیدرنگ

SDK پایگاه داده Realtime برای دسک تاپ از REST برای دسترسی به پایگاه داده شما استفاده می کند ، بنابراین شما باید شاخص هایی را که با Query::OrderByChild() در دسک تاپ استفاده می کنید اعلام کنید Query::OrderByChild() شنوندگان شما از کار می Query::OrderByChild() .

اطلاعات اضافی برای راه اندازی دسک تاپ

کتابخانه های ویندوز

برای ویندوز ، نسخه های کتابخانه بر اساس موارد زیر ارائه می شود:

  • سکوی ساخت: حالت 32 بیتی (x86) در مقابل 64 بیتی (x64)
  • محیط زمان اجرا برای Windows: Multithreaded / MT vs Multithreaded DLL / MD
  • هدف: انتشار در مقابل اشکال زدایی

توجه داشته باشید که کتابخانه های زیر با استفاده از Visual Studio 2015 و 2017 آزمایش شده اند.

هنگام ساخت برنامه های دسک تاپ C ++ در ویندوز ، کتابخانه های SDK زیر Windows را به پروژه خود پیوند دهید. برای کسب اطلاعات بیشتر با اسناد کامپایلر خود مشورت کنید.

کتابخانه Firebase C ++ وابستگی های کتابخانه SDK ویندوز
احراز هویت advapi32, ws2_32, crypt32
Cloud Firestore 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) ارائه شده است. چارچوب هایی نیز برای راحتی شما ارائه شده است.

توجه داشته باشید که کتابخانه های macOS با استفاده از Xcode 10.3.0 آزمایش شده اند.

هنگام ساخت برنامه های دسک تاپ C ++ در macOS ، موارد زیر را به پروژه خود پیوند دهید:

  • کتابخانه سیستم pthread
  • چارچوب سیستم CoreFoundation macOS
  • چارچوب سیستم macOS Foundation
  • چارچوب سیستم macOS Security
  • چارچوب سیستم GSS macOS
  • چارچوب سیستم macOS Kerberos
  • SystemConfiguration چارچوب سیستم macOS

برای کسب اطلاعات بیشتر با اسناد کامپایلر خود مشورت کنید.

کتابخانه های لینوکس

برای لینوکس ، نسخه های کتابخانه برای سیستم عامل های 32 بیتی (i386) و 64 بیتی (x86_64) ارائه شده است.

توجه داشته باشید که کتابخانه های لینوکس با استفاده از GCC 4.8.0 ، GCC 7.2.0 و Clang 5.0 در اوبونتو آزمایش شده اند.

هنگام ساخت برنامه های دسک تاپ C ++ در Linux ، کتابخانه pthread سیستم را به پروژه خود پیوند دهید. برای کسب اطلاعات بیشتر با اسناد کامپایلر خود مشورت کنید. اگر در حال ساخت با GCC 5 یا بالاتر هستید ، -D_GLIBCXX_USE_CXX11_ABI=0 تعریف کنید.

مراحل بعدی