بازی های C++ خود را با SDK های Firebase C++ ما تقویت کنید که یک رابط C++ در بالای SDK های Firebase ارائه می دهند.
به طور کامل از کد ++C خود به Firebase دسترسی داشته باشید، بدون اینکه نیازی به نوشتن کدهای بومی پلتفرم باشید. Firebase SDK همچنین بسیاری از اصطلاحات خاص زبان مورد استفاده توسط Firebase را به یک رابط آشناتر برای توسعه دهندگان C++ ترجمه می کند.
در صفحه بازی های Firebase ما اطلاعات بیشتری در مورد تقویت بازی های خود با Firebase بیابید.
آیا قبلاً Firebase را به پروژه ++C خود اضافه کرده اید؟ مطمئن شوید که از آخرین نسخه Firebase C++ SDK استفاده میکنید.
پیش نیازها
موارد زیر را نصب کنید:
- Xcode 16.2 یا بالاتر
- CocoaPods 1.12.0 یا بالاتر
مطمئن شوید که پروژه شما نسخه های پلتفرم زیر یا نسخه های جدیدتر را هدف قرار می دهد:
- iOS 13
- tvOS 13
یک دستگاه فیزیکی راه اندازی کنید یا از شبیه ساز برای اجرای برنامه خود استفاده کنید.
برای Cloud Messaging در پلتفرمهای اپل، پیشنیازها در اینجا آمده است:
- یک دستگاه اپل فیزیکی را تنظیم کنید.
- یک کلید تأیید اعتبار Apple Push Notification برای حساب Apple Developer خود دریافت کنید.
- Push Notifications را در Xcode در قسمت App > Capabilities فعال کنید.
با استفاده از حساب Google خود وارد Firebase شوید .
مرحله 2 : یک پروژه Firebase ایجاد کنید
قبل از اینکه بتوانید Firebase را به پروژه C++ خود اضافه کنید، باید یک پروژه Firebase ایجاد کنید تا به پروژه C++ خود متصل شوید. برای کسب اطلاعات بیشتر در مورد پروژه های Firebase، از Understand Firebase Projects دیدن کنید.
مرحله 3 : برنامه خود را با Firebase ثبت کنید
برای استفاده از Firebase در برنامه Apple خود، باید برنامه خود را در پروژه Firebase خود ثبت کنید. ثبت برنامه شما اغلب "افزودن" برنامه شما به پروژه شما نامیده می شود.
به کنسول Firebase بروید.
در مرکز صفحه نمای کلی پروژه، روی نماد iOS+ کلیک کنید تا گردش کار راه اندازی شود.
اگر قبلاً برنامهای را به پروژه Firebase خود اضافه کردهاید، روی افزودن برنامه کلیک کنید تا گزینههای پلتفرم نمایش داده شوند.
شناسه بسته نرم افزاری خود را در قسمت شناسه بسته وارد کنید.
شناسه بسته نرم افزاری به طور منحصر به فرد یک برنامه را در اکوسیستم اپل شناسایی می کند.
شناسه بسته خود را پیدا کنید: پروژه خود را در Xcode باز کنید، برنامه سطح بالا را در ناوبر پروژه انتخاب کنید، سپس برگه General را انتخاب کنید.
مقدار فیلد Bundle Identifier، شناسه بسته است (به عنوان مثال،
com.yourcompany.yourproject
).توجه داشته باشید که مقدار ID بسته به حروف کوچک و بزرگ حساس است و نمیتوان آن را برای این برنامه Firebase پس از ثبت در پروژه Firebase تغییر داد.
(اختیاری) اطلاعات دیگر برنامه را وارد کنید: نام مستعار برنامه و شناسه فروشگاه App .
نام مستعار برنامه : یک شناسه داخلی و راحت که فقط برای شما در کنسول Firebase قابل مشاهده است
شناسه فروشگاه App : توسط Firebase Dynamic Links برای هدایت کاربران به صفحه App Store شما و توسط Google Analytics برای وارد کردن رویدادهای تبدیل به Google Ads استفاده میشود. اگر برنامه شما هنوز شناسه فروشگاه App ندارد، میتوانید شناسه را بعداً در تنظیمات پروژه خود اضافه کنید.
روی ثبت برنامه کلیک کنید.
مرحله 4 : فایل پیکربندی Firebase را اضافه کنید
روی Download GoogleService-Info.plist کلیک کنید تا فایل پیکربندی پلتفرم های Apple Firebase خود را دریافت کنید.
فایل پیکربندی Firebase حاوی شناسههای منحصر به فرد، اما غیر مخفی برای پروژه شما است. برای کسب اطلاعات بیشتر در مورد این فایل پیکربندی، از Understand Firebase Projects دیدن کنید.
میتوانید فایل پیکربندی Firebase خود را دوباره در هر زمانی دانلود کنید.
مطمئن شوید که نام فایل پیکربندی با کاراکترهای اضافی مانند
(2)
اضافه نشده باشد.
پروژه ++C خود را در یک IDE باز کنید، سپس فایل پیکربندی خود را به ریشه پروژه C++ خود بکشید.
اگر از شما خواسته شد، انتخاب کنید تا فایل پیکربندی را به همه اهداف اضافه کنید.
کار راهاندازی در کنسول Firebase تمام شده است. افزودن SDK های Firebase C++ را در زیر ادامه دهید.
مرحله 5 : SDK های Firebase C++ را اضافه کنید
مراحل این بخش نمونه ای از نحوه افزودن محصولات Firebase پشتیبانی شده به پروژه Firebase C++ است.
Firebase C++ SDK را دانلود کنید، سپس SDK را در جایی مناسب از حالت فشرده خارج کنید.
Firebase C++ SDK مختص پلتفرم نیست، اما حاوی کتابخانه های مخصوص پلتفرم است.
پادهای Firebase را از SDK خارجشده اضافه کنید.
اگر قبلاً یک پادفایل ندارید ایجاد کنید:
cd your-app-directory
pod init
به Podfile خود، غلاف های Firebase را که می خواهید در برنامه خود استفاده کنید، اضافه کنید.
Analytics فعال شد
# Add the Firebase pod for Google Analytics pod 'FirebaseAnalytics'
# 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 'FirebaseAuth' pod 'FirebaseDatabase'Analytics فعال نیست
# 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 'FirebaseAuth' pod 'FirebaseDatabase'
پادها را نصب کنید، سپس فایل
.xcworkspace
را در Xcode باز کنید.pod install
open your-app.xcworkspace
فریمورکهای Firebase را از SDK خارجشده اضافه کنید.
سادهترین راه برای افزودن این فریمورکها معمولاً کشیدن آنها از پنجره
Finder
است که مستقیماً به پنجره Xcode's Project Navigator (به طور پیشفرض پنجره سمت چپ، یا روی نماد فایل در سمت چپ بالای Xcode کلیک کنید).چارچوب Firebase C++
firebase.framework
را اضافه کنید، که برای استفاده از هر محصول Firebase لازم است.برای هر محصول Firebase که میخواهید استفاده کنید، چارچوبی اضافه کنید. به عنوان مثال، برای استفاده از Firebase Authentication ،
firebase_auth.framework
اضافه کنید.
در کنسول Firebase ، در گردش کار راه اندازی، روی Next کلیک کنید.
اگر Analytics را اضافه کردهاید، برنامه خود را اجرا کنید تا تأییدیه به Firebase ارسال شود که Firebase را با موفقیت ادغام کردهاید. در غیر این صورت، می توانید از این مرحله تأیید رد شوید.
گزارشهای دستگاه شما تأیید Firebase را نشان میدهد که اولیهسازی کامل شده است. اگر برنامه خود را روی شبیهسازی اجرا کردهاید که به شبکه دسترسی دارد، کنسول Firebase به شما اطلاع میدهد که اتصال برنامه شما کامل شده است.
شما آماده اید! برنامه C++ شما برای استفاده از محصولات Firebase ثبت و پیکربندی شده است.
کتابخانه های موجود
درباره کتابخانه های C++ Firebase در مستندات مرجع و در نسخه SDK منبع باز ما در GitHub بیشتر بیاموزید.
کتابخانه های موجود برای پلتفرم های اپل
توجه داشته باشید که کتابخانههای ++C برای Android در نسخه Android این صفحه راهاندازی فهرست شدهاند.
هر محصول Firebase وابستگی های متفاوتی دارد. مطمئن شوید که تمام وابستگی های لیست شده برای محصول Firebase مورد نظر را به پروژه Podfile و C++ خود اضافه کنید.
هر محصول Firebase ممکن است فقط مجموعهای از پلتفرمهای سیستم عامل Apple (iOS، tvOS و غیره) را پشتیبانی کند. بررسی کنید کدام پلتفرمها توسط هر کتابخانه پشتیبانی میشوند در درباره C++ و Firebase بیشتر بدانید .
محصول Firebase | چارچوب ها و پادها |
---|---|
AdMob | (لازم) firebase.framework firebase_admob.framework (الزامی) firebase_analytics.framework pod 'FirebaseAdMob', '11.14.0' (الزامی) pod 'FirebaseAnalytics', '11.14.0' |
Analytics | (لازم) firebase.framework firebase_analytics.framework pod 'FirebaseAnalytics', '11.14.0' |
App Check | (لازم) firebase.framework firebase_app_check.framework pod 'FirebaseAppCheck', '11.14.0' |
Authentication | (لازم) firebase.framework firebase_auth.framework pod 'FirebaseAuth', '11.14.0' |
Cloud Firestore | (لازم) firebase.framework firebase_firestore.framework firebase_auth.framework pod 'FirebaseFirestore', '11.14.0' pod 'FirebaseAuth', '11.14.0' |
Cloud Functions | (لازم) firebase.framework firebase_functions.framework pod 'FirebaseFunctions', '11.14.0' |
Cloud Messaging | (لازم) firebase.framework firebase_messaging.framework (توصیه می شود) firebase_analytics.framework pod 'FirebaseMessaging', '11.14.0' (توصیه می شود) pod 'FirebaseAnalytics', '11.14.0' |
Cloud Storage | (لازم) firebase.framework firebase_storage.framework pod 'FirebaseStorage', '11.14.0' |
Dynamic Links | (لازم) firebase.framework firebase_dynamic_links.framework (توصیه می شود) firebase_analytics.framework pod 'FirebaseDynamicLinks', '11.14.0' (توصیه می شود) pod 'FirebaseAnalytics', '11.14.0' |
Realtime Database | (لازم) firebase.framework firebase_database.framework pod 'FirebaseDatabase', '11.14.0' |
Remote Config | (لازم) firebase.framework firebase_remote_config.framework (توصیه می شود) firebase_analytics.framework pod 'FirebaseRemoteConfig', '11.14.0' (توصیه می شود) pod 'FirebaseAnalytics', '11.14.0' |
اطلاعات اضافی برای راه اندازی تلفن همراه
روش swizzling
در iOS، برخی رویدادهای برنامه (مانند باز کردن URL ها و دریافت اعلان ها) به نماینده برنامه شما نیاز دارند تا روش های خاصی را پیاده سازی کنند. برای مثال، دریافت یک اعلان ممکن است به نماینده برنامه شما نیاز داشته باشد که application:didReceiveRemoteNotification:
. از آنجا که هر برنامه iOS نماینده برنامه مخصوص به خود را دارد، Firebase از روش Swizzling استفاده می کند که امکان جایگزینی یک روش با روش دیگر را فراهم می کند تا کنترل کننده های خود را علاوه بر هر چیزی که ممکن است پیاده سازی کرده باشید، متصل کند.
کتابخانههای Dynamic Links و Cloud Messaging باید با استفاده از روش Swizzling، کنترلکنندهها را به نماینده برنامه متصل کنند. اگر از هر یک از این محصولات Firebase استفاده میکنید، در زمان بارگذاری، Firebase کلاس AppDelegate
شما را شناسایی میکند و روشهای مورد نیاز را روی آن جابجا میکند و یک فراخوانی را به پیادهسازی روش موجود شما بازمیگرداند.
تنظیم یک گردش کار دسکتاپ ( بتا )
هنگامی که در حال ایجاد یک بازی هستید، اغلب آسانتر است که بازی خود را ابتدا روی پلتفرمهای دسکتاپ آزمایش کنید، سپس آن را در دستگاههای تلفن همراه در مراحل بعدی توسعه و آزمایش کنید. برای پشتیبانی از این گردش کار، ما زیرمجموعهای از SDKهای Firebase C++ را ارائه میکنیم که میتوانند روی Windows، macOS، Linux و از داخل ویرایشگر C++ اجرا شوند.
برای گردش کار دسکتاپ، باید موارد زیر را تکمیل کنید:
- پروژه C++ خود را برای CMake پیکربندی کنید.
- یک پروژه Firebase ایجاد کنید
- برنامه خود (iOS یا Android) را با Firebase ثبت کنید
- یک فایل پیکربندی Firebase برای پلتفرم موبایل اضافه کنید
یک نسخه دسکتاپ از فایل پیکربندی Firebase ایجاد کنید:
اگر فایل Android
google-services.json
را اضافه کرده اید — وقتی برنامه خود را اجرا می کنید، 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 وارد کرده اید. برای کسب اطلاعات بیشتر در مورد فایل های پیکربندی، از Understand Firebase Projects دیدن کنید.
SDK های Firebase را به پروژه C++ خود اضافه کنید.
مراحل زیر به عنوان نمونه ای از نحوه افزودن هر محصول Firebase پشتیبانی شده به پروژه ++C خود است. در این مثال، افزودن Firebase Authentication و Firebase Realtime Database طی می کنیم.
متغیر محیطی
FIREBASE_CPP_SDK_DIR
خود را روی مکان زیپ نشده Firebase C++ SDK تنظیم کنید.به فایل
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}")
برنامه ++C خود را اجرا کنید.
کتابخانه های موجود (رومیزی)
Firebase C++ SDK شامل پشتیبانی از گردش کار دسکتاپ برای زیرمجموعهای از ویژگیها میشود که امکان استفاده از بخشهای خاصی از Firebase را در ساختهای دسکتاپ مستقل در ویندوز، macOS و لینوکس فراهم میکند.
محصول Firebase | منابع کتابخانه (با استفاده از CMake) |
---|---|
App Check | firebase_app_check (الزامی) firebase_app |
Authentication | firebase_auth (الزامی) firebase_app |
Cloud Firestore | firebase_firestore firebase_auth firebase_app |
Cloud Functions | firebase_functions (الزامی) firebase_app |
Cloud Storage | firebase_storage (الزامی) firebase_app |
Realtime Database | firebase_database (الزامی) firebase_app |
Remote Config | firebase_remote_config (الزامی) firebase_app |
Firebase کتابخانههای دسکتاپ باقیمانده را بهعنوان پیادهسازیهای خرد (غیر کاربردی) برای راحتی در هنگام ساخت برای Windows، macOS و Linux ارائه میکند. بنابراین، برای هدف قرار دادن دسکتاپ نیازی به کامپایل کد مشروط ندارید.
Realtime Database بیدرنگ
Realtime Database SDK برای دسکتاپ از REST برای دسترسی به پایگاه داده شما استفاده میکند، بنابراین باید فهرستهایی را که با Query::OrderByChild()
روی دسکتاپ استفاده میکنید، اعلام کنید وگرنه شنوندگان شما با شکست مواجه میشوند.
اطلاعات اضافی برای راه اندازی دسکتاپ
کتابخانه های ویندوز
برای ویندوز، نسخه های کتابخانه بر اساس موارد زیر ارائه می شود:
- پلتفرم ساخت: حالت 32 بیتی (x86) در مقابل 64 بیتی (x64).
- محیط اجرای ویندوز: Multithreaded / MT vs Multithreaded DLL /MD
- هدف: انتشار در مقابل اشکال زدایی
توجه داشته باشید که کتابخانه های زیر با استفاده از Visual Studio 2015 و 2017 تست شده اند.
هنگام ساخت برنامه های دسکتاپ C++ در ویندوز، کتابخانه های Windows SDK زیر را به پروژه خود پیوند دهید. برای اطلاعات بیشتر با مستندات کامپایلر خود مشورت کنید.
کتابخانه Firebase C++ | وابستگی های کتابخانه SDK ویندوز |
---|---|
App Check | advapi32, ws2_32, crypt32 |
Authentication | advapi32, ws2_32, crypt32 |
Cloud Firestore | advapi32, ws2_32, crypt32, rpcrt4, ole32, shell32 |
Cloud Functions | advapi32, ws2_32, crypt32, rpcrt4, ole32 |
Cloud Storage | advapi32, ws2_32, crypt32 |
Realtime Database | advapi32, ws2_32, crypt32, iphlpapi, psapi, userenv |
Remote Config | advapi32, ws2_32, crypt32, rpcrt4, ole32 |
کتابخانه های macOS
برای macOS (داروین)، نسخه های کتابخانه ای برای پلتفرم 64 بیتی (x86_64) ارائه شده است. چارچوب هایی نیز برای راحتی شما ارائه شده است.
توجه داشته باشید که کتابخانههای macOS با استفاده از Xcode 16.2 آزمایش شدهاند.
هنگام ساخت برنامه های دسکتاپ C++ در macOS، موارد زیر را به پروژه خود پیوند دهید:
- کتابخانه سیستم
pthread
- چارچوب سیستم MacOS
CoreFoundation
-
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
را به پروژه خود پیوند دهید. برای اطلاعات بیشتر با مستندات کامپایلر خود مشورت کنید. اگر در حال ساخت با GCC 5 یا بالاتر هستید، -D_GLIBCXX_USE_CXX11_ABI=0
را تعریف کنید.
مراحل بعدی
نمونه برنامه های Firebase را کاوش کنید.
SDK منبع باز را در GitHub کاوش کنید.
برای راه اندازی برنامه خود آماده شوید:
- هشدارهای بودجه را برای پروژه خود در کنسول Google Cloud تنظیم کنید.
- داشبورد استفاده و صورتحساب را در کنسول Firebase نظارت کنید تا تصویری کلی از استفاده از پروژه خود در چندین سرویس Firebase داشته باشید.
- چک لیست راه اندازی Firebase را مرور کنید.
بازی های C++ خود را با SDK های Firebase C++ ما تقویت کنید که یک رابط C++ در بالای SDK های Firebase ارائه می دهند.
به طور کامل از کد ++C خود به Firebase دسترسی داشته باشید، بدون اینکه نیازی به نوشتن کدهای بومی پلتفرم باشید. Firebase SDK همچنین بسیاری از اصطلاحات خاص زبان مورد استفاده توسط Firebase را به یک رابط آشناتر برای توسعه دهندگان C++ ترجمه می کند.
در صفحه بازی های Firebase ما اطلاعات بیشتری در مورد تقویت بازی های خود با Firebase بیابید.
آیا قبلاً Firebase را به پروژه ++C خود اضافه کرده اید؟ مطمئن شوید که از آخرین نسخه Firebase C++ SDK استفاده میکنید.
پیش نیازها
موارد زیر را نصب کنید:
- Xcode 16.2 یا بالاتر
- CocoaPods 1.12.0 یا بالاتر
مطمئن شوید که پروژه شما نسخه های پلتفرم زیر یا نسخه های جدیدتر را هدف قرار می دهد:
- iOS 13
- tvOS 13
یک دستگاه فیزیکی راه اندازی کنید یا از شبیه ساز برای اجرای برنامه خود استفاده کنید.
برای Cloud Messaging در پلتفرمهای اپل، پیشنیازها در اینجا آمده است:
- یک دستگاه اپل فیزیکی را تنظیم کنید.
- یک کلید تأیید اعتبار Apple Push Notification برای حساب Apple Developer خود دریافت کنید.
- Push Notifications را در Xcode در قسمت App > Capabilities فعال کنید.
با استفاده از حساب Google خود وارد Firebase شوید .
مرحله 2 : یک پروژه Firebase ایجاد کنید
قبل از اینکه بتوانید Firebase را به پروژه C++ خود اضافه کنید، باید یک پروژه Firebase ایجاد کنید تا به پروژه C++ خود متصل شوید. برای کسب اطلاعات بیشتر در مورد پروژه های Firebase، از Understand Firebase Projects دیدن کنید.
مرحله 3 : برنامه خود را با Firebase ثبت کنید
برای استفاده از Firebase در برنامه اپل خود ، باید برنامه خود را در پروژه Firebase خود ثبت کنید. ثبت نام برنامه شما اغلب "افزودن" برنامه خود به پروژه خود نامیده می شود.
به کنسول Firebase بروید.
در مرکز صفحه نمای کلی پروژه ، روی نماد iOS+ کلیک کنید تا گردش کار Setup را راه اندازی کنید.
اگر قبلاً برنامه ای را به پروژه Firebase خود اضافه کرده اید ، روی Add App برای نمایش گزینه های پلتفرم کلیک کنید.
شناسه بسته نرم افزاری برنامه خود را در قسمت شناسه بسته نرم افزاری وارد کنید.
شناسه بسته نرم افزاری منحصر به فرد برنامه ای را در اکوسیستم اپل مشخص می کند.
شناسه بسته نرم افزاری خود را پیدا کنید: پروژه خود را در Xcode باز کنید ، برنامه سطح بالا را در Project Navigator انتخاب کنید ، سپس برگه عمومی را انتخاب کنید.
مقدار قسمت شناسه بسته نرم افزاری شناسه بسته نرم افزاری (به عنوان مثال ،
com.yourcompany.yourproject
) است.توجه داشته باشید که مقدار شناسه بسته نرم افزاری حساس به مورد است و پس از ثبت نام در پروژه Firebase شما ، نمی توان آن را برای این برنامه Firebase تغییر داد.
(اختیاری) سایر اطلاعات برنامه را وارد کنید: نام مستعار برنامه و شناسه فروشگاه برنامه .
نام مستعار برنامه : یک شناسه داخلی و راحتی که فقط در کنسول Firebase برای شما قابل مشاهده است
شناسه فروشگاه App : توسط Firebase Dynamic Links برای هدایت کاربران به صفحه App Store و Google Analytics برای وارد کردن رویدادهای تبدیل به Google Ads استفاده می شود. اگر برنامه شما هنوز دارای شناسه فروشگاه App نیست ، می توانید بعداً در تنظیمات پروژه خود شناسه را اضافه کنید.
روی برنامه ثبت نام کلیک کنید.
مرحله 4 : پرونده پیکربندی Firebase را اضافه کنید
برای به دست آوردن پرونده پیکربندی سیستم عامل های Apple Firebase خود ، روی بارگیری Googleservice-info.plist کلیک کنید.
پرونده پیکربندی Firebase حاوی شناسه های منحصر به فرد اما غیر مخفی برای پروژه شما است. برای کسب اطلاعات بیشتر در مورد این پرونده پیکربندی ، به پروژه های Firebase Swite مراجعه کنید.
می توانید در هر زمان دوباره پرونده پیکربندی Firebase خود را بارگیری کنید.
اطمینان حاصل کنید که نام پرونده پیکربندی با شخصیت های اضافی مانند
(2)
ضمیمه نشده است.
پروژه C ++ خود را در یک IDE باز کنید ، سپس پرونده پیکربندی خود را به ریشه پروژه C ++ خود بکشید.
اگر از شما خواسته شد، انتخاب کنید تا فایل پیکربندی را به همه اهداف اضافه کنید.
شما با تنظیمات تنظیم شده در کنسول Firebase انجام شد. به اضافه کردن SDK های Firebase C ++ در زیر ادامه دهید.
مرحله 5 : SDK های Firebase C ++ را اضافه کنید
مراحل این بخش نمونه ای از نحوه اضافه کردن محصولات Firebase پشتیبانی شده به پروژه Firebase C ++ شما است.
Firebase C++ SDK را بارگیری کنید ، سپس SDK را در جایی مناسب از حالت فشرده جدا کنید.
Firebase C++ SDK مخصوص سکو نیست ، اما شامل کتابخانه های خاص پلت فرم است.
غلافهای Firebase را از SDK خارج نشده اضافه کنید.
اگر یکی از آنها را ندارید ، یک podfile ایجاد کنید:
cd your-app-directory
pod init
به Podfile خود ، غلافهای Firebase را که می خواهید در برنامه خود استفاده کنید اضافه کنید.
Analytics فعال شد
# Add the Firebase pod for Google Analytics pod 'FirebaseAnalytics'
# 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 'FirebaseAuth' pod 'FirebaseDatabase'Analytics فعال نشده است
# 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 'FirebaseAuth' pod 'FirebaseDatabase'
غلاف ها را نصب کنید ، سپس پرونده
.xcworkspace
را در Xcode باز کنید.pod install
open your-app.xcworkspace
چارچوب های Firebase را از SDK خارج نشده اضافه کنید.
ساده ترین راه برای افزودن این چارچوب ها معمولاً این است که آنها را از یک پنجره
Finder
مستقیماً به صفحه Project Navigator Xcode (صفحه چپ چپ ، به طور پیش فرض بکشید یا روی نماد فایل در سمت چپ XCode کلیک کنید) بکشید.Firebase C ++ Framework
firebase.framework
را که برای استفاده از هر محصول Firebase لازم است ، اضافه کنید.چارچوب هر محصول Firebase را که می خواهید استفاده کنید اضافه کنید. به عنوان مثال ، برای استفاده Firebase Authentication ،
firebase_auth.framework
اضافه کنید.
دوباره در کنسول Firebase ، در گردش کار تنظیم ، روی Next کلیک کنید.
اگر Analytics را اضافه کردید ، برنامه خود را برای ارسال تأیید به Firebase که با موفقیت Firebase یکپارچه شده اید ، اجرا کنید. در غیر این صورت ، می توانید از این مرحله تأیید استفاده کنید.
سیاهههای مربوط به دستگاه شما تأیید صحت Firebase را نشان می دهند که اولیه سازی کامل است. اگر برنامه خود را بر روی یک شبیه ساز که دسترسی به شبکه دارد اجرا کردید ، کنسول Firebase به شما اطلاع می دهد که اتصال برنامه شما کامل است.
شما آماده اید! برنامه C ++ شما برای استفاده از محصولات Firebase ثبت و پیکربندی شده است.
کتابخانه های موجود
در مورد مستندات مرجع و در انتشار منبع باز SDK در GitHub ، در مورد کتابخانه های Firebase C ++ اطلاعات بیشتری کسب کنید.
کتابخانه های موجود برای سیستم عامل های اپل
توجه داشته باشید که کتابخانه های C ++ برای Android در نسخه Android این صفحه تنظیم شده است.
هر محصول Firebase وابستگی های متفاوتی دارد. حتماً تمام وابستگی های ذکر شده را برای محصول مورد نظر Firebase به پروژه Podfile و C ++ خود اضافه کنید.
هر محصول Firebase فقط ممکن است از مجموعه سیستم عامل های اپل (iOS ، TVOS و غیره) پشتیبانی کند. بررسی کنید که کدام سیستم عامل ها توسط هر کتابخانه برای اطلاعات بیشتر در مورد C ++ و Firebase پشتیبانی می شوند.
محصول Firebase | چارچوب ها و غلاف ها |
---|---|
AdMob | (مورد نیاز) firebase.framework firebase_admob.framework (مورد نیاز) firebase_analytics.framework pod 'FirebaseAdMob', '11.14.0' (مورد نیاز) pod 'FirebaseAnalytics', '11.14.0' |
Analytics | (مورد نیاز) firebase.framework firebase_analytics.framework pod 'FirebaseAnalytics', '11.14.0' |
App Check | (مورد نیاز) firebase.framework firebase_app_check.framework pod 'FirebaseAppCheck', '11.14.0' |
Authentication | (مورد نیاز) firebase.framework firebase_auth.framework pod 'FirebaseAuth', '11.14.0' |
Cloud Firestore | (مورد نیاز) firebase.framework firebase_firestore.framework firebase_auth.framework pod 'FirebaseFirestore', '11.14.0' pod 'FirebaseAuth', '11.14.0' |
Cloud Functions | (مورد نیاز) firebase.framework firebase_functions.framework pod 'FirebaseFunctions', '11.14.0' |
Cloud Messaging | (مورد نیاز) firebase.framework firebase_messaging.framework (توصیه می شود) firebase_analytics.framework pod 'FirebaseMessaging', '11.14.0' (توصیه می شود) pod 'FirebaseAnalytics', '11.14.0' |
Cloud Storage | (مورد نیاز) firebase.framework firebase_storage.framework pod 'FirebaseStorage', '11.14.0' |
Dynamic Links | (مورد نیاز) firebase.framework firebase_dynamic_links.framework (توصیه می شود) firebase_analytics.framework pod 'FirebaseDynamicLinks', '11.14.0' (توصیه می شود) pod 'FirebaseAnalytics', '11.14.0' |
Realtime Database | (مورد نیاز) firebase.framework firebase_database.framework pod 'FirebaseDatabase', '11.14.0' |
Remote Config | (مورد نیاز) firebase.framework firebase_remote_config.framework (توصیه می شود) firebase_analytics.framework pod 'FirebaseRemoteConfig', '11.14.0' (توصیه می شود) pod 'FirebaseAnalytics', '11.14.0' |
اطلاعات اضافی برای راه اندازی موبایل
روش چرخاننده
در iOS ، برخی از رویدادهای برنامه (مانند باز کردن URL و دریافت اعلان ها) به نماینده برنامه شما نیاز دارند تا روشهای خاص را پیاده سازی کنند. به عنوان مثال ، دریافت یک اعلان ممکن است نماینده برنامه شما را برای اجرای application:didReceiveRemoteNotification:
. از آنجا که هر برنامه iOS دارای نماینده برنامه خاص خود است ، Firebase از روش Swizzling استفاده می کند ، که به جایگزینی یک روش با روش دیگر امکان می دهد تا علاوه بر هر کاری که ممکن است پیاده سازی کرده باشید ، دستگیرندگان خود را وصل کنید.
Dynamic Links و کتابخانه های Cloud Messaging باید با استفاده از روش swizzling ، دستگیرندگان را به نماینده برنامه وصل کنند. اگر از هر یک از این محصولات Firebase استفاده می کنید ، در زمان بار ، Firebase کلاس AppDelegate
شما را مشخص می کند و روش های مورد نیاز را روی آن می کند و به اجرای روش موجود خود می پردازد.
تنظیم گردش کار دسک تاپ ( بتا )
هنگامی که شما در حال ایجاد یک بازی هستید ، ابتدا آزمایش بازی خود بر روی سیستم عامل های دسک تاپ بسیار ساده تر است ، سپس بعداً در توسعه دستگاه های تلفن همراه را مستقر و تست کنید. برای پشتیبانی از این گردش کار ، ما زیر مجموعه ای از SDK های Firebase C++ را ارائه می دهیم که می تواند روی ویندوز ، MacOS ، Linux و از درون ویرایشگر C ++ اجرا شود.
برای گردش کار دسک تاپ ، باید موارد زیر را تکمیل کنید:
- پروژه C ++ خود را برای Cmake پیکربندی کنید.
- یک پروژه Firebase ایجاد کنید
- برنامه خود (iOS یا Android) را با Firebase ثبت کنید
- یک فایل پیکربندی Firebase موبایل را اضافه کنید
یک نسخه دسک تاپ از پرونده پیکربندی Firebase ایجاد کنید:
اگر پرونده Android
google-services.json
را اضافه کردید -وقتی برنامه خود را اجرا می کنید ، 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 Fanch بازدید کنید.
SDK های Firebase را به پروژه C ++ خود اضافه کنید.
مراحل زیر به عنوان نمونه ای از نحوه اضافه کردن هر محصول Firebase پشتیبانی شده به پروژه C ++ شما است. در این مثال ، ما از طریق افزودن Firebase Authentication و Firebase Realtime Database قدم می زنیم.
متغیر محیط
FIREBASE_CPP_SDK_DIR
خود را بر روی محل Firebase C++ SDK تنظیم کنید.به پرونده
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}")
برنامه C ++ خود را اجرا کنید.
کتابخانه های موجود (دسک تاپ)
Firebase C++ SDK شامل پشتیبانی از گردش کار دسک تاپ برای زیر مجموعه ای از ویژگی ها است و این امکان را فراهم می کند تا قسمت های خاصی از Firebase را در ساخت دسک تاپ مستقل بر روی ویندوز ، مکوس و لینوکس استفاده کند.
محصول Firebase | منابع کتابخانه (با استفاده از cmake) |
---|---|
App Check | firebase_app_check (مورد نیاز) firebase_app |
Authentication | firebase_auth (مورد نیاز) firebase_app |
Cloud Firestore | firebase_firestore firebase_auth firebase_app |
Cloud Functions | firebase_functions (مورد نیاز) firebase_app |
Cloud Storage | firebase_storage (مورد نیاز) firebase_app |
Realtime Database | firebase_database (مورد نیاز) firebase_app |
Remote Config | firebase_remote_config (مورد نیاز) firebase_app |
Firebase کتابخانه های دسک تاپ باقیمانده را به عنوان پیاده سازی های خرد (غیر کاربردی) برای راحتی در هنگام ساخت ویندوز ، MACOS و لینوکس ارائه می دهد. بنابراین ، برای هدف قرار دادن دسک تاپ نیازی به تهیه کد به صورت مشروط ندارید.
دسکتاپ Realtime Database
Realtime Database SDK برای دسک تاپ از REST برای دسترسی به پایگاه داده خود استفاده می کند ، بنابراین باید شاخص هایی را که با Query::OrderByChild()
در دسک تاپ استفاده می کنید اعلام کنید یا شنوندگان شما شکست خواهند خورد.
اطلاعات اضافی برای تنظیم دسک تاپ
کتابخانه های ویندوز
برای ویندوز ، نسخه های کتابخانه بر اساس موارد زیر ارائه می شود:
- ساخت پلت فرم: حالت 32 بیتی (x86) در مقابل حالت 64 بیتی (x64)
- محیط اجرا ویندوز: Multithreaded / MT vs Multithreaded DLL / MD
- هدف: انتشار در مقابل اشکال زدایی
توجه داشته باشید که کتابخانه های زیر با استفاده از Visual Studio 2015 و 2017 مورد آزمایش قرار گرفتند.
هنگام ساختن برنامه های دسک تاپ C ++ در ویندوز ، کتابخانه های زیر Windows SDK را به پروژه خود پیوند دهید. برای اطلاعات بیشتر با مستندات کامپایلر خود مشورت کنید.
کتابخانه Firebase C ++ | وابستگی های کتابخانه SDK ویندوز |
---|---|
App Check | advapi32, ws2_32, crypt32 |
Authentication | advapi32, ws2_32, crypt32 |
Cloud Firestore | advapi32, ws2_32, crypt32, rpcrt4, ole32, shell32 |
Cloud Functions | advapi32, ws2_32, crypt32, rpcrt4, ole32 |
Cloud Storage | advapi32, ws2_32, crypt32 |
Realtime Database | advapi32, ws2_32, crypt32, iphlpapi, psapi, userenv |
Remote Config | advapi32, ws2_32, crypt32, rpcrt4, ole32 |
کتابخانه های MACOS
برای MACOS (داروین) ، نسخه های کتابخانه برای پلت فرم 64 بیتی (x86_64) ارائه شده است. چارچوب ها برای راحتی شما نیز ارائه شده است.
توجه داشته باشید که کتابخانه های MACOS با استفاده از Xcode 16.2 آزمایش شده اند.
هنگام ساختن برنامه های دسک تاپ C ++ در MACOS ، موارد زیر را به پروژه خود پیوند دهید:
- کتابخانه سیستم
pthread
- چارچوب سیستم MACOS
CoreFoundation
- چارچوب سیستم MACOS
Foundation
- چارچوب سیستم MACOS
Security
- چارچوب سیستم
GSS
MACOS - چارچوب سیستم
Kerberos
MacOS - چارچوب سیستم MACOS
SystemConfiguration
برای اطلاعات بیشتر با مستندات کامپایلر خود مشورت کنید.
کتابخانه های لینوکس
برای لینوکس ، نسخه های کتابخانه برای سیستم عامل های 32 بیتی (I386) و 64 بیتی (x86_64) ارائه شده است.
توجه داشته باشید که کتابخانه های لینوکس با استفاده از GCC 4.8.0 ، GCC 7.2.0 و Clang 5.0 در اوبونتو مورد آزمایش قرار گرفتند.
هنگام ساختن برنامه های دسک تاپ C ++ در لینوکس ، کتابخانه سیستم pthread
را به پروژه خود پیوند دهید. برای اطلاعات بیشتر با مستندات کامپایلر خود مشورت کنید. اگر در حال ساخت با GCC 5 یا بالاتر هستید ، -D_GLIBCXX_USE_CXX11_ABI=0
را تعریف کنید.
مراحل بعدی
نمونه برنامه های Firebase را کاوش کنید.
SDK منبع باز را در GitHub کاوش کنید.
برای راه اندازی برنامه خود آماده شوید:
- هشدارهای بودجه را برای پروژه خود در کنسول Google Cloud تنظیم کنید.
- داشبورد استفاده و صورتحساب را در کنسول Firebase نظارت کنید تا تصویری کلی از استفاده از پروژه خود در چندین سرویس Firebase داشته باشید.
- چک لیست راه اندازی Firebase را مرور کنید.