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

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

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

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

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

پیش نیازها

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

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

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

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

مرحله 2: ایجاد یک پروژه فایربیس

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

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

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

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

  1. رفتن به کنسول فایربیس .

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

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

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

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

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

گام 4: اضافه کردن فایل پیکربندی فایربیس

  1. برای به دست آوردن فایل پیکربندی فایربیس iOS خود را کلیک کنید دانلود GoogleService-Info.plist.

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

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

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

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

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

  1. دانلود فایربیس C ++ SDK ، و سپس از حالت زیپ خارج SDK جایی راحت است.

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

  2. اضافه کردن فایربیس غلاف از 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. اضافه کردن فایربیس چارچوب از SDK استخراج.

    ساده ترین راه برای اضافه کردن این چارچوب است که معمولا آنها را بکشید از یک Finder پنجره به طور مستقیم به سمت پروژه ناوبر Xcode متعلق به (پنجره های چپ، به طور پیش فرض و یا کلیک بر روی آیکون فایل در بالا سمت چپ Xcode متعلق به).

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

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

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

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

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

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

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

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

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

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

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

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

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

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

pod 'Firebase/Auth', '8.2.0'
ابر Firestore (بتا) (لازم) firebase.framework
firebase_firestore.framework
firebase_auth.framework

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

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

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

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

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

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

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

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

سوئیچینگ روش

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

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

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

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

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

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

    • اگر شما اضافه آندروید google-services.json فایل - هنگامی که شما برنامه خود را اجرا کنید، فایربیس واقع این فایل همراه، پس از آن به صورت خودکار و دسکتاپ فایربیس فایل پیکربندی ( google-services-desktop.json ).

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

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

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

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

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

    1. تنظیم خود را FIREBASE_CPP_SDK_DIR متغیر محیطی به محل استخراج فایربیس C ++ SDK.

    2. برای پروژه خود را CMakeLists.txt فایل، اضافه کردن مطالب زیر، از جمله کتابخانه ها برای محصولات فایربیس که شما می خواهید به استفاده از. به عنوان مثال ، برای استفاده از 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 ++ خود را اجرا کنید.

کتابخانه های موجود (دسک تاپ)

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

محصول Firebase منابع کتابخانه (با استفاده از CMake)
احراز هویت firebase_auth
(لازم) firebase_app
ابر 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 پایگاه برای دسکتاپ با استفاده از REST برای دسترسی به پایگاه داده خود را، بنابراین شما باید شاخص اعلام که شما با استفاده از 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 12 آزمایش شده اند.

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

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

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

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

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

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

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

مراحل بعدی