בזמן שאתה מפתח את פרויקט ה-Android שלך באמצעות Firebase, אתה עשוי לגלות מושגים שאינם מוכרים או ספציפיים ל-Firebase. עמוד זה נועד לענות על שאלות אלו או להפנות אותך למשאבים למידע נוסף.
אם יש לך שאלות לגבי נושא שלא מכוסה בדף זה, אל תהסס לבקר באחת מהקהילות המקוונות שלנו. אנו גם נעדכן את הדף הזה עם נושאים חדשים מעת לעת, אז בדוק שוב כדי לראות אם הוספנו את הנושא שאתה רוצה ללמוד עליו!
תוסף Firebase Assistant עבור Android Studio
ה-Firebase Assistant הוא תוסף Android Studio הרושם את אפליקציית ה-Android שלך עם פרויקט Firebase ומוסיף את קבצי התצורה, הפלאגינים והתלות הנדרשים של Firebase לפרויקט Android שלך - הכל מתוך Android Studio!
עקוב אחר ההוראות בדף ההתחלה של Android כדי להשתמש ב-Firebase Assistant. ודא שאתה משתמש בגרסאות המעודכנות ביותר של Android Studio ושל Firebase Assistant (עבור אל קובץ > חפש עדכונים ).
כשאתה בוחר במוצרי Firebase ספציפיים להוספה לאפליקציה שלך, ה-Firebase Assistant מכריז אוטומטית על התלות הנדרשת בקובץ app/build.gradle
שלך. עם זאת, כדי להשתמש בתכונות Firebase שהן מעבר ליכולות הנוכחיות של Firebase Assistant, ייתכן שתרצה לבצע כמה שינויים ידניים בתלויות האלה:
אם אתה רוצה להשתמש ב- Firebase Android BoM , עדכן את התלות בקובץ Gradle של המודול (ברמת האפליקציה) (בדרך כלל
app/build.gradle
) כדי לייבא את פלטפורמת BoM. תצטרך גם להסיר את הגרסאות מכל שורת תלות בספריית Firebase.אם אתה רוצה להשתמש בספריית הרחבות Kotlin , שנה את שורת התלות שנוספה לקובץ Gradle של המודול (ברמת האפליקציה) (בדרך כלל
app/build.gradle
) כדי להשתמש בגרסתktx
של ספריית Firebase במקום זאת.
שירותי גוגל - תוסף וקובץ תצורה
כחלק מהוספת Firebase לפרויקט האנדרואיד שלך, עליך להוסיף לפרויקט שלך את הפלאגין google-services
וקובץ תצורה
.
אם אתה מוסיף את Firebase לפרויקט ה-Android שלך דרך מסוף Firebase , הניהול REST API או Firebase CLI , עליך להוסיף ידנית את הפלאגין וקובץ התצורה לפרויקט שלך. עם זאת, אם אתה משתמש ב- Firebase Assistant , משימות אלו יבוצעו עבורך באופן אוטומטי במהלך ההגדרה.
בקר בתיעוד של Android כדי ללמוד כיצד התוסף שירותי Google וקובץ התצורה עובדים יחד.
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:32.4.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 עבור אימות ו-Cloud Firestore:
dependencies { // Import the BoM for the Firebase platform implementation platform('com.google.firebase:firebase-bom:32.4.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 לאפליקציה שלך.
כן! כאשר אתה מצהיר על שורות התלות הספציפיות של ספריית Firebase, פשוט השתמש בשם ספריית KTX, כך:
dependencies { // Import the BoM for the Firebase platform implementation platform('com.google.firebase:firebase-bom:32.4.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-ktx' implementation 'com.google.firebase:firebase-firestore-ktx' }
לא. Firebase Android BoM מנהל רק גרסאות ספריות עבור ספריות Firebase. היוצא מן הכלל היחיד הוא ההכללה של Google Mobile Ads SDK מכיוון שהוא כל כך נפוץ באפליקציות 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:32.4.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' }
בקר ב- Repo של Firebase Android SDK ב-GitHub .
השווה גרסאות Firebase BoM
מודולי ספריית הרחבות Kotlin (KTX).
מודולי ספריית Firebase Kotlin extensions (KTX) הם מלווים קטנים למודולי ספריית Firebase הראשיים, ותוכל להשתמש בהם כדי לכתוב קוד Kotlin יפה ואידיומטי.
כדי להשתמש במודול ספריית KTX באפליקציה שלך, שנה את התלות שלך כך שתכלול את סיומת -ktx
. לכל מודול KTX יש באופן אוטומטי תלות במודול הספרייה הראשי, כך שאין צורך לכלול את שתי התלות באפליקציה שלך.
dependencies { // Import the BoM for the Firebase platform (learn more) implementation platform('com.google.firebase:firebase-bom:32.4.0')// Declare the main module implementation 'com.google.firebase:firebase-analytics'// Declare the KTX module instead (which automatically has a dependency on the main module) implementation 'com.google.firebase:firebase-analytics-ktx' }
כל מודול KTX מספק הרחבות תחביריות שונות של המודול הראשי. לדוגמה, מודול Analytics KTX מקל על רישום אירועים:
לפני (באמצעות המודול הראשי)
val analytics = FirebaseAnalytics.getInstance(); val bundle = Bundle(); bundle.putString(FirebaseAnalytics.Param.ITEM_ID, id); bundle.putString(FirebaseAnalytics.Param.ITEM_NAME, name); bundle.putString(FirebaseAnalytics.Param.CONTENT_TYPE, "image"); analytics.logEvent(FirebaseAnalytics.Event.SELECT_ITEM, bundle);
לאחר (במקום זאת באמצעות מודול KTX)
firebaseAnalytics.logEvent(FirebaseAnalytics.Event.SELECT_ITEM) { param(FirebaseAnalytics.Param.ITEM_ID, id) param(FirebaseAnalytics.Param.ITEM_NAME, name) param(FirebaseAnalytics.Param.CONTENT_TYPE, "image") }
כל מוצרי Firebase מציעים מודול KTX למעט Firebase ML ו-App Indexing.
אם עדיין לא עשית זאת, עיין במסמכי העזרה של API עבור מודולי KTX.
מודולי תכונות והצגה של תכונות Play
החל ממאי 2021 (Firebase BoM v28.0.0), ניתן להשתמש ב-SDK של Firebase Android במודולי תכונה דינמיים המותקנים בנפרד ממודול היישום הבסיסי שלך.
כדי לאפשר תמיכה במודולי תכונה דינמית, הוסף את התלות הבאה לקובץ build.gradle
של מודול הבסיס שלך:
dependencies {
implementation 'com.google.firebase:firebase-dynamic-module-support:16.0.0-beta03'
}
כעת, לאחר שהוספת תמיכה במודול דינמי, תוכל להוסיף תלות של Firebase SDK (עם או בלי Firebase BoM) כדי להציג מודולים של האפליקציה שלך ולהשתמש בהם כרגיל.
לדוגמה, אם האפליקציה שלך משתמשת ב-Realtime Database כדי להפעיל תכונה ספציפית בזמן אמת, תוכל להוסיף את התלות של firebase-database
ל- build.gradle
של מודול התכונות ולא למודול הבסיס. זה יקטין את גודל ההורדה עבור רוב המשתמשים.
שים לב להזהרות הבאות בעת שימוש ב-SDK של Firebase במודולי תכונות:
מוצרים כגון קישורים דינמיים או Firebase In-App Messaging המסתמכים על האירוע
first_open
של Analytics עשויים לפספס את האירוע הזה בשימוש במודול תכונה דינמי.כשאתה משתמש ב-Cloud Firestore ובאימות ביחד, עליך תמיד לכלול את שניהם באותו מודול. אם זה לא אפשרי, ודא שהאימות נטען לפני Cloud Firestore; אחרת, ייתכן שלחלק מפעולות Cloud Firestore יהיה מצב אימות שגוי.
בעת שימוש
firebase-crashlytics-ndk
כתלות במודול תכונה דינמית, עליך להגדיר את המאפייןunstrippedNativeLibsDir
בקובץbuild.gradle
של האפליקציה שלך, כמתואר בתיעוד Crashlytics NDK .
למידע נוסף על מודולי תכונות והצגת תכונות Play, בקר בסקירה כללית של הצגת תכונות Play .
שירותי גוגל תוסף Gradle לעומת שירותי Google Play לעומת חנות Google Play
לכמה חלקים מהמערכת האקולוגית של Google, Firebase ואנדרואיד יש מוסכמות שמות דומות. להלן הסבר קצר לכל אחד מהם:
- תוסף של שירותי גוגל Gradle
- תוסף Gradle (
com.google.gms.google-services
) הפועל בזמן הבנייה כדי להבטיח שלאפליקציה שלך יש את התצורה הנכונה לגשת אל ממשקי ה-API של Firebase ו-Google - למרות שמו, תוסף זה אינו קשור לשירותי Google Play (ראה ערך הבא) ואין לו השפעה על יכולות האפליקציה שלך בזמן ריצה.
- תוסף זה מעבד גם את הקובץ
google-services.json
שאתה מוסיף לאפליקציה שלך כחלק מהגדרת Firebase. למידע נוסף על הפלאגין של שירותי Google Gradle . - שירותי Google Play
- שירות רקע בלתי נראה הפועל על מכשיר אנדרואיד ומספק מספר ממשקי API נפוצים של Google (כמו מפות Google ו-Google Sign In) לאפליקציות במכשיר
- על ידי ריכוז ממשקי ה-API הנפוצים הללו לשירות אחד, הוא מפחית את הגודל של אפליקציות אחרות ומאפשר למכשיר לקבל עדכוני אבטחה אוטומטיים ושיפורי תכונות ללא עדכון מערכת ההפעלה. למידע נוסף על שירותי Google Play .
- חנות הגוגל סטור
- חנות להורדת אפליקציות, סרטים, ספרים ועוד במכשיר אנדרואיד
- כמפתח, אתה מנהל את ההפצה, ההפצות וכו' עבור האפליקציה שלך דרך Google Play Console. אם למכשיר יש את חנות Google Play, הוא מפעיל גם שירותי Google Play (ראה ערך קודם). למידע נוסף על חנות Google Play למפתחים .
- שירותי Google Play משחקים
- סט של ממשקי API למפתחי משחקים ניידים
- למידע נוסף על שירותי Google Play Games וכיצד לשלב את Firebase עם פרויקט שירותי Google Play Games שלך .
משאבי קוד פתוח עבור Firebase Android SDK
Firebase תומך בפיתוח קוד פתוח, ואנו מעודדים תרומות ומשוב מהקהילה.
ערכות SDK של אנדרואיד של Firebase
רוב ערכות ה-SDK של Firebase ל-Android מפותחות כספריות קוד פתוח במאגר ה-Firebase GitHub הציבורי שלנו. אנו פועלים באופן פעיל להעביר את ספריות Firebase הנותרות שפותחו באופן פרטי אל GitHub הציבורי שלנו בקרוב!
דוגמאות להתחלה מהירה
Firebase שומרת על אוסף של דוגמאות להתחלה מהירה עבור רוב ממשקי ה-API של Firebase ב-Android. מצא את ההתחלה המהירה האלה במאגר ההתחלה המהיר הציבורי שלנו Firebase GitHub .
אתה יכול לפתוח כל התחלה מהירה כפרויקט של Android Studio, ואז להפעיל אותם במכשיר נייד או במכשיר וירטואלי (AVD). לחלופין, תוכל להשתמש בהתחלות המהירות האלה כקוד לדוגמה לשימוש ב-SDK של Firebase.
נושאים אחרים מעניינים
- התלות של ערכות SDK של Firebase ל-Android בשירותי Google Play
- קשר את אפליקציית Firebase שלך ל-Google Play
- השתלב עם פרויקט שירותי Play Games שלך