بازیهای C++ خود را با کیتهای توسعه نرمافزار Firebase C++ ما که یک رابط C++ را بر روی کیتهای توسعه نرمافزار Firebase ارائه میدهند، قدرتمندتر کنید.
بدون نیاز به نوشتن هیچ کد بومی پلتفرم، کاملاً از طریق کد C++ خود به Firebase دسترسی داشته باشید. کیت توسعه نرمافزار Firebase همچنین بسیاری از اصطلاحات خاص زبان مورد استفاده توسط Firebase را به رابطی آشناتر برای توسعهدهندگان C++ ترجمه میکند.
برای اطلاعات بیشتر در مورد تقویت بازیهایتان با Firebase، به صفحه بازیهای Firebase ما مراجعه کنید.
آیا قبلاً Firebase را به پروژه C++ خود اضافه کردهاید؟ مطمئن شوید که از آخرین نسخه Firebase C++ SDK استفاده میکنید.
پیشنیازها
ویرایشگر یا IDE مورد نظر خود، مانند Android Studio، IntelliJ یا VS Code را نصب کنید.
SDK اندروید را دریافت کنید.
مطمئن شوید که پروژه شما این الزامات را برآورده میکند:
هدف API سطح ۲۱ (لالیپاپ) یا بالاتر
از Gradle استفاده میکند و با CMake پیکربندی شده است
یک دستگاه فیزیکی راهاندازی کنید یا از یک شبیهساز برای اجرای برنامه خود استفاده کنید.
شبیهسازها باید از یک تصویر شبیهساز با Google Play استفاده کنند.
برای برخی از کتابخانههای ++C، سرویسهای Google Play در دستگاه کلاینت مورد نیاز است؛ لیست موجود در این صفحه را بررسی کنید.
با استفاده از حساب گوگل خود وارد فایربیس شوید .
مرحله 2 : ایجاد یک پروژه Firebase
قبل از اینکه بتوانید Firebase را به پروژه C++ خود اضافه کنید، باید یک پروژه Firebase ایجاد کنید تا به پروژه C++ شما متصل شود. برای کسب اطلاعات بیشتر در مورد پروژههای Firebase، به بخش «درک پروژههای Firebase» مراجعه کنید.
مرحله ۳ : برنامه خود را در Firebase ثبت کنید
برای استفاده از فایربیس در برنامه اندروید خود، باید برنامه خود را در پروژه فایربیس خود ثبت کنید. ثبت برنامه اغلب "افزودن" برنامه به پروژه شما نامیده میشود.
به کنسول Firebase بروید.
در مرکز صفحه نمای کلی پروژه، روی آیکون اندروید (
) یا افزودن برنامه کلیک کنید تا گردش کار راهاندازی شود.نام بسته برنامه خود را در فیلد نام بسته اندروید وارد کنید.
نام بسته، برنامه شما را به طور منحصر به فرد در دستگاه و فروشگاه گوگل پلی مشخص میکند.
نام بسته اغلب به عنوان شناسه برنامه (Application ID) شناخته میشود.
نام بسته برنامه خود را در فایل Gradle ماژول (سطح برنامه) خود، که معمولاً
app/build.gradle
است، پیدا کنید (به عنوان مثال نام بسته:com.yourcompany.yourproject
).توجه داشته باشید که مقدار نام بسته به حروف بزرگ و کوچک حساس است و پس از ثبت برنامه اندروید Firebase در پروژه Firebase شما، نمیتوان آن را برای این برنامه تغییر داد.
(اختیاری) یک نام مستعار برنامه وارد کنید، که یک شناسه داخلی و راحت است که فقط در کنسول Firebase برای شما قابل مشاهده است.
روی ثبت برنامه کلیک کنید.
مرحله ۴ : فایل پیکربندی Firebase را اضافه کنید
برای دریافت فایل پیکربندی اندروید فایربیس خود ، روی دانلود google-services.json کلیک کنید.
فایل پیکربندی Firebase حاوی شناسههای منحصر به فرد اما غیر محرمانه برای پروژه و برنامه شما است. برای کسب اطلاعات بیشتر در مورد این فایل پیکربندی، به بخش «درک پروژههای Firebase» مراجعه کنید.
شما میتوانید فایل پیکربندی Firebase خود را در هر زمانی دوباره دانلود کنید.
مطمئن شوید که نام فایل پیکربندی با کاراکترهای اضافی مانند
(2)
ضمیمه نشده باشد.
پروژه ++C خود را در یک IDE باز کنید، سپس فایل پیکربندی خود را به پروژه اضافه کنید:
Gradle builds — فایل پیکربندی خود را به همان دایرکتوری که فایل
build.gradle
سطح بالای شما قرار دارد، اضافه کنید.سایر سیستمهای ساخت - برای تولید منابع رشتهای اندروید، به سیستمهای ساخت سفارشی در زیر مراجعه کنید.
(فقط نسخههای Gradle) برای فعال کردن سرویسهای Firebase در پروژه C++ خود، افزونه google-services را به فایل
build.gradle
سطح بالای خود اضافه کنید.قوانینی را برای گنجاندن افزونه Google Services Gradle اضافه کنید. بررسی کنید که مخزن Maven گوگل را نیز داشته باشید.
buildscript { repositories { // Check that you have the following line (if not, add it): google() // Google's Maven repository } dependencies { // ... // Add the following lines: classpath 'com.google.gms:google-services:4.4.4' // Google Services plugin implementation 'com.google.android.gms:18.9.0' } } allprojects { // ... repositories { // Check that you have the following line (if not, add it): google() // Google's Maven repository // ... } }
افزونه Google Services Gradle را اعمال کنید:
apply plugin: 'com.android.application' // Add the following line: apply plugin: 'com.google.gms.google-services' // Google Services plugin android { // ... }
کار شما با تنظیم وظایف در کنسول Firebase تمام شد. در ادامه به افزودن SDK های Firebase C++ ادامه دهید.
مرحله 5 : اضافه کردن SDK های Firebase C++
مراحل این بخش نمونهای از نحوه اضافه کردن محصولات پشتیبانیشدهی فایربیس به پروژهی ++C فایربیس شما است.
کیت توسعه نرمافزاری Firebase C++ را دانلود کنید، سپس SDK را در جایی مناسب از حالت فشرده خارج کنید.
Firebase C++ فایربیس مختص پلتفرم خاصی نیست، اما شامل کتابخانههای مختص هر پلتفرم است.
در فایل
gradle.properties
پروژه خود، محل SDK از حالت فشرده خارج شده را مشخص کنید:systemProp.firebase_cpp_sdk.dir=full-path-to-SDK
به فایل
settings.gradle
پروژه خود، محتوای زیر را اضافه کنید:def firebase_cpp_sdk_dir = System.getProperty('firebase_cpp_sdk.dir') gradle.ext.firebase_cpp_sdk_dir = "$firebase_cpp_sdk_dir" includeBuild "$firebase_cpp_sdk_dir"
به فایل Gradle ماژول (سطح برنامه) خود (معمولاً
app/build.gradle
)، محتوای زیر را اضافه کنید.
وابستگیهای کتابخانهای مربوط به محصولات Firebase که میخواهید در برنامه خود استفاده کنید را وارد کنید.Analytics فعال شد
android.defaultConfig.externalNativeBuild.cmake { arguments "-DFIREBASE_CPP_SDK_DIR=$gradle.firebase_cpp_sdk_dir" } # Add the dependencies for the Firebase products you want to use in your app # For example, to use Analytics, Firebase Authentication, and Firebase Realtime Database apply from: "$gradle.firebase_cpp_sdk_dir/Android/firebase_dependencies.gradle" firebaseCpp.dependencies { analytics auth database }
Analytics فعال نیست
android.defaultConfig.externalNativeBuild.cmake { arguments "-DFIREBASE_CPP_SDK_DIR=$gradle.firebase_cpp_sdk_dir" } # Add the dependencies for the Firebase products you want to use in your app # For example, to use Firebase Authentication and Firebase Realtime Database apply from: "$gradle.firebase_cpp_sdk_dir/Android/firebase_dependencies.gradle" firebaseCpp.dependencies { auth database }
به فایل
CMakeLists.txt
پروژه خود، محتوای زیر را اضافه کنید.
کتابخانههای مربوط به محصولات Firebase که میخواهید در برنامه خود استفاده کنید را وارد کنید.Analytics فعال شد
# 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 Analytics, Firebase Authentication, and Firebase Realtime Database set(firebase_libs firebase_analytics firebase_auth firebase_database firebase_app ) target_link_libraries(${target_name} "${firebase_libs}")
Analytics فعال نیست
# 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}")
برنامه خود را همگامسازی کنید تا مطمئن شوید که همه وابستگیها نسخههای لازم را دارند.
اگر Analytics را اضافه کردهاید، برنامه خود را اجرا کنید تا تأییدیهای مبنی بر ادغام موفقیتآمیز Firebase به Firebase ارسال شود. در غیر این صورت، میتوانید از مرحله تأیید صرف نظر کنید.
گزارشهای دستگاه شما، تأیید Firebase مبنی بر تکمیل مقداردهی اولیه را نمایش میدهند. اگر برنامه خود را روی یک شبیهساز که به شبکه دسترسی دارد اجرا کرده باشید، کنسول Firebase به شما اطلاع میدهد که اتصال برنامه شما تکمیل شده است.
همه چیز آماده است! برنامه C++ شما برای استفاده از سرویسهای Firebase ثبت و پیکربندی شده است.
کتابخانههای موجود
برای کسب اطلاعات بیشتر در مورد کتابخانههای C++ Firebase به مستندات مرجع و نسخه متنباز SDK ما در GitHub مراجعه کنید.
کتابخانههای موجود برای اندروید (با استفاده از CMake)
توجه داشته باشید که کتابخانههای ++C برای پلتفرمهای اپل در نسخه پلتفرمهای اپل (iOS+) این صفحه تنظیمات فهرست شدهاند.
محصول فایربیس | منابع کتابخانه ( firebaseCpp.dependencies برای فایل build.gradle ) | منابع کتابخانه ( firebase_libs برای فایل CMakeLists.txt ) |
---|---|---|
AdMob | admob | firebase_admob (الزامی) firebase_analytics (الزامی) firebase_app |
Analytics | analytics | firebase_analytics (الزامی) firebase_app |
App Check | appCheck | firebase_app_check (الزامی) firebase_app |
Authentication | auth | firebase_auth (الزامی) firebase_app |
Cloud Firestore | firestore | firebase_firestore (الزامی) firebase_auth (الزامی) firebase_app |
Cloud Functions | functions | firebase_functions (الزامی) firebase_app |
Cloud Messaging | messaging | firebase_messaging (توصیه میشود) firebase_analytics (الزامی) firebase_app |
Cloud Storage | storage | firebase_storage (الزامی) firebase_app |
Dynamic Links | dynamicLinks | firebase_dynamic_links (توصیه میشود) firebase_analytics (الزامی) firebase_app |
Realtime Database | database | firebase_database (الزامی) firebase_app |
Remote Config | remoteConfig | firebase_remote_config (توصیه میشود) firebase_analytics (الزامی) firebase_app |
اطلاعات تکمیلی برای تنظیمات موبایل
گزارشهای خرابی NDK را دریافت کنید
Firebase Crashlytics از گزارش خرابی برای برنامههایی که از کتابخانههای بومی اندروید استفاده میکنند، پشتیبانی میکند. برای کسب اطلاعات بیشتر، به «دریافت گزارشهای خرابی NDK اندروید» مراجعه کنید.
سیستمهای ساخت سفارشی
فایربیس اسکریپت generate_xml_from_google_services_json.py
را برای تبدیل google-services.json
به منابع .xml
که میتوانید در پروژه خود بگنجانید، ارائه میدهد. این اسکریپت همان تبدیلی را اعمال میکند که افزونه Gradle سرویسهای گوگل پلی هنگام ساخت برنامههای اندروید انجام میدهد.
اگر با استفاده از Gradle برنامه را نمیسازید (مثلاً از ndk-build، makefiles، Visual Studio و غیره استفاده میکنید)، میتوانید از این اسکریپت برای خودکارسازی تولید منابع رشتهای اندروید (Android String Resources ) استفاده کنید.
پروگارد
بسیاری از سیستمهای ساخت اندروید از ProGuard برای ساخت در حالت انتشار استفاده میکنند تا اندازه برنامه را کاهش داده و از کد منبع جاوا محافظت کنند.
اگر از ProGuard استفاده میکنید، باید فایلهای مربوط به کتابخانههای Firebase C++ که در پیکربندی ProGuard خود استفاده میکنید را در libs/android/*.pro
اضافه کنید.
برای مثال، با Gradle، اگر از Google Analytics استفاده میکنید، فایل build.gradle
شما به شکل زیر خواهد بود:
android { // ... buildTypes { release { minifyEnabled true proguardFile getDefaultProguardFile('your-project-proguard-config.txt') proguardFile file(project.ext.your_local_firebase_sdk_dir + "/libs/android/app.pro") proguardFile file(project.ext.your_local_firebase_sdk_dir + "/libs/android/analytics.pro") // ... and so on, for each Firebase C++ library that you're using } } }
الزامات خدمات گوگل پلی
اکثر کتابخانههای Firebase C++ نیاز دارند که سرویسهای Google Play روی دستگاه اندروید کلاینت باشند. اگر یک کتابخانه Firebase C++ در هنگام مقداردهی اولیه، kInitResultFailedMissingDependency
برگرداند، به این معنی است که سرویسهای Google Play روی دستگاه کلاینت در دسترس نیستند (به این معنی که باید بهروزرسانی، دوباره فعالسازی، رفع مجوزها و غیره شود). کتابخانه Firebase تا زمانی که وضعیت روی دستگاه کلاینت اصلاح نشود، قابل استفاده نیست.
شما میتوانید با استفاده از توابع موجود در google_play_services/availability.h
متوجه شوید که چرا سرویسهای گوگل پلی در دستگاه کلاینت در دسترس نیستند (و سعی کنید آن را برطرف کنید).
جدول زیر نشان میدهد که آیا سرویسهای گوگل پلی برای هر محصول پشتیبانیشدهی فایربیس روی دستگاه کلاینت مورد نیاز است یا خیر.
کتابخانه فایربیس سی پلاس پلاس | سرویسهای گوگل پلی روی دستگاه کلاینت مورد نیاز است؟ |
---|---|
AdMob | لازم نیست (معمولاً) |
Analytics | لازم نیست |
Authentication | مورد نیاز |
Cloud Firestore | مورد نیاز |
Cloud Functions | مورد نیاز |
Cloud Messaging | مورد نیاز |
Cloud Storage | مورد نیاز |
Dynamic Links | مورد نیاز |
Realtime Database | مورد نیاز |
Remote Config | مورد نیاز |
سرویسهای AdMob و گوگل پلی
اکثر نسخههای SDK Google Mobile Ads برای اندروید میتوانند بدون سرویسهای گوگل پلی روی دستگاه کلاینت به درستی کار کنند. با این حال، اگر از وابستگی com.google.android.gms:play-services-ads-lite
به جای وابستگی استاندارد com.google.firebase:firebase-ads
که در بالا ذکر شد استفاده میکنید، سرویسهای گوگل پلی مورد نیاز است .
مقداردهی اولیه AdMob فقط زمانی kInitResultFailedMissingDependency
را برمیگرداند که هر دو مورد زیر درست باشند:
- سرویسهای گوگل پلی روی دستگاه کلاینت در دسترس نیست.
- شما از
com.google.android.gms:play-services-ads-lite
استفاده میکنید.
راهاندازی گردش کار دسکتاپ ( بتا )
وقتی در حال ساخت یک بازی هستید، اغلب خیلی راحتتر است که ابتدا بازی خود را روی پلتفرمهای دسکتاپ آزمایش کنید، سپس بعداً در مراحل توسعه، آن را روی دستگاههای تلفن همراه مستقر و آزمایش کنید. برای پشتیبانی از این گردش کار، ما زیرمجموعهای از SDK های Firebase C++ را ارائه میدهیم که میتوانند روی ویندوز، macOS، لینوکس و از درون ویرایشگر C++ اجرا شوند.
برای گردش کار دسکتاپ، باید موارد زیر را تکمیل کنید:
- پروژه C++ خود را برای CMake پیکربندی کنید.
- ایجاد یک پروژه فایربیس
- برنامه خود (iOS یا Android) را با Firebase ثبت کنید
- یک فایل پیکربندی Firebase برای پلتفرم موبایل اضافه کنید
یک نسخه دسکتاپ از فایل پیکربندی Firebase ایجاد کنید:
اگر فایل
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» مراجعه کنید.
کیتهای توسعه نرمافزار Firebase را به پروژه C++ خود اضافه کنید.
مراحل زیر به عنوان مثالی از نحوه اضافه کردن هر محصول پشتیبانی شده Firebase به پروژه C++ شما ارائه میشود. در این مثال، ما مراحل اضافه کردن Firebase Authentication و Firebase Realtime Database بررسی میکنیم.
متغیر محیطی
FIREBASE_CPP_SDK_DIR
خود را روی محل SDK C++ Firebase از حالت فشرده خارج شده تنظیم کنید.به فایل
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 خود را اجرا کنید.
کتابخانههای موجود (دسکتاپ)
کیت توسعه نرمافزاری C++ 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 |
فایربیس کتابخانههای دسکتاپ باقیمانده را به عنوان پیادهسازیهای stub (غیرعملیاتی) برای راحتی هنگام ساخت برای ویندوز، macOS و لینوکس ارائه میدهد. بنابراین، نیازی به کامپایل مشروط کد برای هدف قرار دادن دسکتاپ ندارید.
دسکتاپ Realtime Database
کیت توسعه نرمافزار (SDK) Realtime Database برای دسکتاپ از REST برای دسترسی به پایگاه داده شما استفاده میکند، بنابراین باید ایندکسهایی را که با Query::OrderByChild()
در دسکتاپ استفاده میکنید، تعریف کنید، در غیر این صورت شنوندههای شما با شکست مواجه خواهند شد.
اطلاعات تکمیلی برای تنظیمات دسکتاپ
کتابخانههای ویندوز
برای ویندوز، نسخههای کتابخانه بر اساس موارد زیر ارائه میشوند:
- پلتفرم ساخت: حالت ۳۲ بیتی (x86) در مقابل ۶۴ بیتی (x64)
- محیط زمان اجرای ویندوز: چندرشتهای / MT در مقابل چندرشتهای DLL /MD
- هدف: انتشار در مقابل اشکالزدایی
توجه داشته باشید که کتابخانههای زیر با استفاده از ویژوال استودیو ۲۰۱۵ و ۲۰۱۷ آزمایش شدهاند.
هنگام ساخت برنامههای دسکتاپ ++C در ویندوز، کتابخانههای Windows SDK زیر را به پروژه خود پیوند دهید. برای اطلاعات بیشتر به مستندات کامپایلر خود مراجعه کنید.
کتابخانه فایربیس سی پلاس پلاس | وابستگیهای کتابخانه 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 (داروین)، نسخههای کتابخانه برای پلتفرم ۶۴ بیتی (x86_64) ارائه شده است. چارچوبهایی نیز برای راحتی شما ارائه شده است.
توجه داشته باشید که کتابخانههای macOS با استفاده از Xcode 16.2 آزمایش شدهاند.
هنگام ساخت برنامههای دسکتاپ ++C در macOS، موارد زیر را به پروژه خود پیوند دهید:
- کتابخانه سیستم
pthread
- چارچوب سیستم macOS
CoreFoundation
- چارچوب سیستم عامل macOS
Foundation
- چارچوب سیستم macOS
Security
- چارچوب سیستم macOS
GSS
- چارچوب سیستم عامل macOS
Kerberos
- چارچوب سیستم macOS
SystemConfiguration
برای اطلاعات بیشتر به مستندات کامپایلر خود مراجعه کنید.
کتابخانههای لینوکس
برای لینوکس، نسخههای کتابخانه برای پلتفرمهای ۳۲ بیتی (i386) و ۶۴ بیتی (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 متنباز را در گیتهاب بررسی کنید.
برای راهاندازی برنامه خود آماده شوید:
- هشدارهای بودجه را برای پروژه خود در کنسول Google Cloud تنظیم کنید.
- داشبورد «مصرف و پرداخت» را در کنسول Firebase رصد کنید تا تصویری کلی از میزان مصرف پروژه خود در چندین سرویس فایربیس داشته باشید.
- چک لیست راه اندازی Firebase را مرور کنید.