همانطور که در حال توسعه پروژه Android خود با استفاده از Firebase هستید، ممکن است مفاهیمی را پیدا کنید که برای Firebase ناآشنا یا خاص هستند. هدف این صفحه پاسخ به این سؤالات است یا منابعی را برای کسب اطلاعات بیشتر به شما معرفی می کند.
اگر درباره موضوعی که در این صفحه به آن پرداخته نشده است سؤالی دارید، به راحتی به یکی از انجمن های آنلاین ما مراجعه کنید. ما همچنین این صفحه را به صورت دورهای با موضوعات جدید بهروزرسانی میکنیم، بنابراین دوباره بررسی کنید تا ببینید آیا موضوعی را که میخواهید درباره آن بیاموزید اضافه کردهایم یا خیر!
افزونه Firebase Assistant برای اندروید استودیو
Firebase Assistant یک افزونه Android Studio است که برنامه اندروید شما را با یک پروژه Firebase ثبت میکند و فایلهای پیکربندی Firebase، افزونهها و وابستگیهای لازم را به پروژه Android شما اضافه میکند - همه از داخل Android Studio!
برای استفاده از Firebase Assistant دستورالعملهای صفحه شروع Android را دنبال کنید. مطمئن شوید که از بهروزترین نسخههای Android Studio و Firebase Assistant استفاده میکنید (به File > Check for updates بروید).
هنگامی که محصولات Firebase خاصی را برای افزودن به برنامه خود انتخاب می کنید، دستیار Firebase به طور خودکار وابستگی های مورد نیاز را در فایل app/build.gradle
شما اعلام می کند. توجه داشته باشید که اگر میخواهید از Firebase Android BoM (توصیه میشود) استفاده کنید، وابستگیها را در فایل Gradle ماژول (سطح برنامه) خود (معمولا app/build.gradle
) بهروزرسانی کنید تا پلتفرم BoM را وارد کنید. همچنین باید نسخهها را از هر خط وابستگی کتابخانه Firebase حذف کنید.
علاوه بر این، برای استفاده از برخی از محصولات Firebase، باید APIها یا منابع را در خارج از Android Studio فعال کنید. دستورالعملهای مربوط به هر محصول در Firebase Assistant هر اقدام دیگری را که باید انجام دهید توضیح میدهد. به عنوان مثال، برای استفاده از Cloud Firestore ، باید پایگاه داده و قوانین خود را در کنسول Firebase تنظیم کنید.
خدمات Google - افزونه و فایل پیکربندی
به عنوان بخشی از افزودن Firebase به پروژه Android خود، باید افزونه google-services
و یک فایل پیکربندی
را به پروژه خود اضافه کنید.
اگر Firebase را از طریق کنسول Firebase ، Management REST API یا Firebase CLI به پروژه Android خود اضافه کنید، باید افزونه و فایل پیکربندی را به صورت دستی به پروژه خود اضافه کنید. با این حال، اگر از Firebase Assistant استفاده میکنید، این کارها بهطور خودکار در حین راهاندازی برای شما انجام میشوند.
برای آشنایی با نحوه کار افزونه و فایل پیکربندی سرویسهای Google با هم از اسناد Android دیدن کنید.
Firebase Android BoM ( Bill of Materials )
Firebase Android BoM ( Bill of Materials ) به شما امکان می دهد تمام نسخه های کتابخانه Firebase خود را با مشخص کردن تنها یک نسخه مدیریت کنید - نسخه BoM .
وقتی از Firebase BoM در برنامه خود استفاده میکنید، BoM بهطور خودکار نسخههای کتابخانهای را که به نسخه BoM نگاشت شده است، میکشد. تمام نسخه های کتابخانه فردی سازگار خواهند بود. وقتی نسخه BoM را در برنامه خود بهروزرسانی میکنید، تمام کتابخانههای Firebase که در برنامه خود استفاده میکنید به نسخههای نگاشت شده با آن نسخه BoM بهروزرسانی میشوند.
برای اینکه بدانید کدام نسخههای کتابخانه Firebase به یک نسخه BoM خاص نگاشت شدهاند، یادداشتهای انتشار آن نسخه BoM را بررسی کنید. اگر نیاز به مقایسه نسخه های کتابخانه نگاشت شده با یک نسخه BoM در مقایسه با نسخه دیگر BoM دارید، از ویجت مقایسه زیر استفاده کنید.
درباره پشتیبانی Gradle از پلتفرم های BoM بیشتر بیاموزید.
در اینجا نحوه استفاده از Firebase Android BoM برای اعلام وابستگی ها در ماژول (سطح برنامه) فایل Gradle (معمولا app/build.gradle
) آورده شده است. هنگام استفاده از BoM ، شما نسخه های جداگانه کتابخانه را در خطوط وابستگی مشخص نمی کنید.
dependencies { // Import the BoM for the Firebase platform implementation platform('com.google.firebase:firebase-bom:34.0.0') // Declare the dependencies for the desired Firebase products without specifying versions // For example, declare the dependencies for Firebase Authentication and Cloud Firestore implementation 'com.google.firebase:firebase-auth' implementation 'com.google.firebase:firebase-firestore' }
در اینجا چند سوال متداول درباره استفاده از Firebase Android BoM وجود دارد:
در اینجا نحوه لغو نسخه کتابخانه تعیین شده در BoM آمده است:
خط واردات پلت فرم BoM را حفظ کنید.
در خط وابستگی کتابخانه، نسخه کتابخانه مورد نظر را مشخص کنید. برای مثال، اگر میخواهید از نسخه 18.0.0 از App Indexing صرفنظر از اینکه چه نسخهای در BoM تعیین شده است، اما میخواهید از نسخههای BoM برای Authentication و Cloud Firestore استفاده کنید، چگونه وابستگیها را اعلام کنید:
dependencies { // Import the BoM for the Firebase platform implementation platform('com.google.firebase:firebase-bom:34.0.0') // Declare the dependency for the App Indexing library and specify a version // This specified library version overrides the version designated in the BoM. implementation 'com.google.firebase:firebase-appindexing:18.0.0' // Declare the dependencies for the other Firebase libraries without specifying versions // These libraries will use the versions designated in the BoM. implementation 'com.google.firebase:firebase-auth' implementation 'com.google.firebase:firebase-firestore' }
خیر. برای افزودن و استفاده از کتابخانه های Firebase در برنامه خود، باید هر کتابخانه را به عنوان یک خط وابستگی جداگانه در فایل Gradle ماژول (سطح برنامه) خود (معمولا app/build.gradle
) اعلام کنید.
استفاده از BoM تضمین میکند که نسخههای کتابخانههای Firebase در برنامه شما سازگار هستند، اما BoM در واقع آن کتابخانههای Firebase را به برنامه شما اضافه نمیکند.
در ژوئیه 2025 ( BoM v34.0.0)، کتابخانه های افزونه Firebase Kotlin (KTX) از BoM حذف شدند. اگر از نسخه BoM زودتر از نسخه 34.0.0 استفاده می کنید، می توانید به استفاده از کتابخانه های KTX در برنامه خود ادامه دهید.
با این حال، توصیه می کنیم برنامه خود را برای استفاده از API های KTX از ماژول های اصلی منتقل کنید. در غیر این صورت، نمیتوانید به نسخههای جدیدتر BoM و در نتیجه نسخههای جدیدتر کتابخانههای محصولات Firebase را بهروزرسانی کنید. برای جزئیات، به سؤالات متداول در مورد این ابتکار مراجعه کنید.
خیر. Firebase Android BoM فقط نسخههای کتابخانه را برای کتابخانههای Firebase مدیریت میکند.
حتی اگر هر کتابخانه Firebase به طور مستقل نسخه شده است، آنها با هم ساخته شده اند تا اطمینان حاصل شود که آخرین نسخه هر کتابخانه با بقیه سازگار است.
با استفاده از BoM برای مدیریت نسخه های کتابخانه Firebase برنامه خود، نیازی به ردیابی اینکه کدام نسخه از کتابخانه Firebase با کتابخانه Firebase دیگر سازگار است، ندارید.
حتی اگر در حال حاضر فقط از یک کتابخانه Firebase در برنامه خود استفاده می کنید، ما همچنان استفاده از BoM را توصیه می کنیم زیرا هرگز نمی دانید چه زمانی ممکن است بخواهید از کتابخانه Firebase دیگری استفاده کنید!
بله، هنوز هم می توانید از BoM استفاده کنید! برای Gradle 5.0 و بالاتر، پشتیبانی BoM به طور خودکار فعال می شود. با این حال، برای نسخه های قبلی Gradle، فقط باید ویژگی BoM را فعال کنید و BoM کمی متفاوت وارد کنید.
به فایل
settings.gradle
خود،enableFeaturePreview('IMPROVED_POM_SUPPORT')
را اضافه کنید.به فایل Gradle ماژول (سطح برنامه) خود (معمولا
app/build.gradle
)، BoM مانند یک کتابخانه معمولی (بدون اصلاح کنندهplatform
) وارد کنید، مانند:dependencies { // Import the Firebase BoM implementation 'com.google.firebase:firebase-bom:34.0.0' // Declare the dependencies for the desired Firebase products, without specifying versions // For example, declare the dependencies for Firebase Authentication and Cloud Firestore implementation 'com.google.firebase:firebase-auth' implementation 'com.google.firebase:firebase-firestore' }
از مخزن Firebase Android SDK در GitHub دیدن کنید.
مقایسه نسخه های Firebase BoM
ماژول های کتابخانه افزونه های Kotlin (KTX).
ماژول های ویژگی و Play Feature Delivery
از ماه می 2021 ( Firebase BoM v28.0.0)، SDK های اندروید Firebase را می توان در ماژول های ویژگی پویا که جدا از ماژول برنامه پایه شما نصب می شوند، استفاده کرد.
برای فعال کردن پشتیبانی از ماژولهای ویژگی پویا، وابستگی زیر را به فایل build.gradle
ماژول پایه خود اضافه کنید:
dependencies {
implementation 'com.google.firebase:firebase-dynamic-module-support:16.0.0-beta04'
}
اکنون که پشتیبانی از ماژول پویا را اضافه کردهاید، میتوانید وابستگیهای Firebase SDK (با یا بدون Firebase BoM ) را به ماژولهای برنامه خود اضافه کنید و همانطور که معمولاً استفاده میکنید از آنها استفاده کنید.
به عنوان مثال، اگر برنامه شما Realtime Database برای تامین یک ویژگی بیدرنگ خاص استفاده می کند، می توانید به جای ماژول پایه، وابستگی firebase-database
را به build.gradle
ماژول ویژگی اضافه کنید. این باعث کاهش حجم دانلود برای اکثر کاربران می شود.
هنگام استفاده از Firebase SDK در ماژول های ویژگی، از هشدارهای زیر آگاه باشید:
محصولاتی مانند Dynamic Links یا Firebase In-App Messaging که به رویداد Analytics
first_open
متکی هستند، ممکن است در صورت استفاده در یک ماژول ویژگی پویا، این رویداد را از دست بدهند.هنگام استفاده از Cloud Firestore و Authentication با هم، همیشه باید هر دو را در یک ماژول قرار دهید. اگر این امکان پذیر نیست، مطمئن شوید که Authentication قبل از Cloud Firestore بارگیری شده باشد. در غیر این صورت، برخی از عملیات Cloud Firestore ممکن است دارای وضعیت احراز هویت نادرست باشند.
هنگام استفاده از
firebase-crashlytics-ndk
به عنوان وابستگی به ماژول ویژگی پویا، باید ویژگیunstrippedNativeLibsDir
را در فایلbuild.gradle
برنامه خود تنظیم کنید، همانطور که در مستندات Crashlytics NDK توضیح داده شده است.
برای اطلاعات بیشتر در مورد ماژولهای ویژگی و Play Feature Delivery، به نمای کلی از Play Feature Delivery مراجعه کنید.
پلاگین خدمات Google Gradle در مقابل خدمات Google Play در مقابل فروشگاه Google Play
چندین بخش از اکوسیستم Google، Firebase و Android دارای قراردادهای نامگذاری مشابهی هستند. در اینجا توضیح مختصری برای هر کدام آورده شده است:
- پلاگین Gradle خدمات گوگل
- یک پلاگین Gradle (
com.google.gms.google-services
) که در زمان ساخت اجرا می شود تا اطمینان حاصل شود که برنامه شما دارای پیکربندی مناسب برای دسترسی به Firebase و Google API است. - علیرغم نامش، این افزونه هیچ ارتباطی با خدمات Google Play ندارد (به ورودی بعدی مراجعه کنید) و تأثیری بر قابلیت های برنامه شما در زمان اجرا ندارد.
- این افزونه همچنین فایل
google-services.json
را که به عنوان بخشی از راه اندازی Firebase به برنامه خود اضافه می کنید، پردازش می کند. درباره افزونه خدمات Google Gradle بیشتر بدانید. - خدمات گوگل پلی
- یک سرویس پسزمینه نامرئی که در دستگاه Android اجرا میشود و چندین API رایج Google (مانند Google Maps و Google Sign In) را در اختیار برنامههای دستگاه قرار میدهد.
- با متمرکز کردن این APIهای رایج در یک سرویس واحد، اندازه برنامههای دیگر را کاهش میدهد و به دستگاه اجازه میدهد تا بهروزرسانیهای امنیتی خودکار و بهبود ویژگیها را بدون بهروزرسانی سیستمعامل دریافت کند. درباره خدمات Google Play بیشتر بیاموزید.
- فروشگاه Google Play
- فروشگاهی برای دانلود برنامهها، فیلمها، کتابها و موارد دیگر در دستگاه Android
- شما به عنوان یک توسعه دهنده، توزیع، انتشار و غیره را برای برنامه خود از طریق کنسول Google Play مدیریت می کنید. اگر دستگاهی دارای فروشگاه Google Play باشد، خدمات Google Play را نیز اجرا می کند (به ورودی قبلی مراجعه کنید). درباره فروشگاه Google Play برای توسعه دهندگان بیشتر بیاموزید.
- خدمات بازی های Google Play
- مجموعه ای از API برای توسعه دهندگان بازی های موبایل
- درباره خدمات بازی های Google Play و نحوه ادغام Firebase با پروژه خدمات بازی های Google Play خود بیشتر بیاموزید.
منابع منبع باز برای Firebase Android SDK
Firebase از توسعه منبع باز پشتیبانی می کند و ما مشارکت و بازخورد جامعه را تشویق می کنیم.
Firebase Android SDK
اکثر SDK های Firebase Android به عنوان کتابخانه های منبع باز در مخزن عمومی Firebase GitHub ما توسعه یافته اند. ما فعالانه کار می کنیم تا به زودی کتابخانه های Firebase توسعه یافته خصوصی باقی مانده را به GitHub عمومی خود منتقل کنیم!
نمونه های شروع سریع
Firebase مجموعهای از نمونههای شروع سریع را برای اکثر APIهای Firebase در Android نگهداری میکند. این شروعهای سریع را در مخزن عمومی Firebase GitHub ما بیابید.
میتوانید هر شروع سریع را بهعنوان یک پروژه Android Studio باز کنید، سپس آنها را روی یک دستگاه تلفن همراه یا یک دستگاه مجازی (AVD) اجرا کنید. یا می توانید از این شروع سریع به عنوان کد نمونه برای استفاده از Firebase SDK استفاده کنید.
سایر موضوعات مورد علاقه
- وابستگی های Firebase Android SDK به خدمات Google Play
- برنامه Firebase خود را به Google Play پیوند دهید
- با پروژه خدمات Play Games خود یکپارچه شوید