דרישות מוקדמות
מתקינים את Android Studio או מעדכנים אותו לגרסה האחרונה.
צריך לוודא שהפרויקט עומד בדרישות הבאות (שימו לב: למוצרים מסוימים יכולות להיות דרישות מחמירות יותר):
- מטרגטת לרמת API 21 (Lollipop) ומעלה
- מכשיר עם Android מגרסה 5.0 ואילך
- משתמשים ב-Jetpack (AndroidX), שצריך לעמוד בדרישות הגרסה הבאות:
com.android.tools.build:gradle
גרסה 7.3.0 ואילךcompileSdkVersion
28 ואילך
מגדירים מכשיר פיזי או משתמשים במכונה וירטואלית כדי להריץ את האפליקציה.
חשוב לזכור שחבילות Firebase SDK עם תלות ב-Google Play Services מחייבות התקנה של Google Play Services במכשיר או במכונה הווירטואלית.נכנסים ל-Firebase באמצעות חשבון Google.
אם עדיין אין לכם פרויקט ב-Android ואתם רק רוצים לנסות מוצר של Firebase, תוכלו להוריד אחת מדוגמאות למתחילים.
אפשר לחבר את אפליקציית Android ל-Firebase באמצעות אחת מהאפשרויות הבאות:
- אפשרות 1: (מומלץ) משתמשים בתהליך העבודה להגדרת מסוף Firebase.
- אפשרות 2: משתמשים ב-Firebase Assistant של Android Studio (יכול להיות שתצטרכו לבצע הגדרות נוספות).
אפשרות 1: הוספת Firebase באמצעות מסוף Firebase
כדי להוסיף את Firebase לאפליקציה, צריך לבצע משימות גם במסוף Firebase וגם בפרויקט Android הפתוח (לדוגמה, מורידים קובצי תצורה של Firebase מהמסוף ומעבירים אותם לפרויקט Android).
שלב 1: יוצרים פרויקט Firebase
לפני שמוסיפים את Firebase לאפליקציה ל-Android, צריך ליצור פרויקט Firebase כדי לקשר אותו לאפליקציה. במאמר הסבר על פרויקטים ב-Firebase מוסבר בהרחבה על פרויקטים ב-Firebase.
יצירת פרויקט Firebase
-
במסוף Firebase, לוחצים על Add project.
-
כדי להוסיף משאבים של Firebase לפרויקט Google Cloud קיים, מזינים את שם הפרויקט או בוחרים אותו בתפריט הנפתח.
-
כדי ליצור פרויקט חדש, מזינים את שם הפרויקט הרצוי. אפשר גם לערוך את מזהה הפרויקט שמוצג מתחת לשם הפרויקט.
-
-
אם תופיע בקשה, קוראים את התנאים של Firebase ומאשרים אותם.
-
לוחצים על המשך.
-
(אופציונלי) מגדירים את Google Analytics בפרויקט כדי ליהנות מחוויית שימוש אופטימלית בכל אחד מהמוצרים הבאים של Firebase:
בוחרים חשבון Google Analytics קיים או יוצרים חשבון חדש.
אם יוצרים חשבון חדש, בוחרים את Analytics מיקום הדיווח ולאחר מכן מאשרים את ההגדרות של שיתוף הנתונים ואת התנאים של Google Analytics לפרויקט.
-
לוחצים על Create project (או על Add Firebase, אם משתמשים בפרויקט Google Cloud קיים).
מערכת Firebase מקצה משאבים באופן אוטומטי לפרויקט Firebase שלכם. בסיום התהליך, תועברו לדף הסקירה הכללית של הפרויקט ב-Firebase במסוף Firebase.
שלב 2: רישום האפליקציה ב-Firebase
כדי להשתמש ב-Firebase באפליקציה ל-Android, צריך לרשום את האפליקציה בפרויקט Firebase. לעיתים קרובות, רישום האפליקציה נקרא 'הוספת' האפליקציה לפרויקט.
נכנסים למסוף Firebase.
במרכז הדף 'סקירה כללית של הפרויקט', לוחצים על הסמל Android (
) או על הוספת אפליקציה כדי להפעיל את תהליך העבודה להגדרה.מזינים את שם החבילה של האפליקציה בשדה שם החבילה ל-Android.
מהו שם החבילה ואיפה הוא מופיע?
שם החבילה מזהה באופן ייחודי את האפליקציה במכשיר ובחנות Google Play.
שם החבילה נקרא לרוב מזהה אפליקציה.
מחפשים את שם החבילה של האפליקציה בקובץ Gradle של המודול (ברמת האפליקציה), בדרך כלל
app/build.gradle
(שם חבילה לדוגמה:com.yourcompany.yourproject
).חשוב לזכור שהערך של שם החבילה תלוי אותיות רישיות, ולא ניתן לשנות אותו באפליקציית Firebase ל-Android אחרי שהיא תירשם בפרויקט Firebase.
(אופציונלי) מזינים מידע נוסף על האפליקציה: הכינוי של האפליקציה וSHA-1 של אישור החתימה לניפוי באגים.
איך הכינוי של האפליקציה ואישור החתימה לצורך ניפוי באגים SHA-1 משמשים ב-Firebase?
כינוי לאפליקציה: מזהה פנימי לנוחות השימוש, שגלוי רק לכם במסוף Firebase.
SHA-1 לאישור החתימה לצורך ניפוי באגים: גיבוב SHA-1 נדרש ל-Firebase Authentication (כשמשתמשים בכניסה באמצעות חשבון Google או בכניסה באמצעות מספר טלפון) ול-Firebase Dynamic Links.
לוחצים על רישום האפליקציה.
שלב 3: מוסיפים קובץ תצורה של Firebase
מורידים את קובץ התצורה של Firebase ל-Android (
) ומוסיפים אותו לאפליקציה:google-services.json לוחצים על Download google-services.json כדי לקבל את קובץ התצורה של Firebase ל-Android.
מעבירים את קובץ התצורה לתיקיית השורש של המודול (ברמת האפליקציה) באפליקציה.
מה צריך לדעת על קובץ התצורה הזה?
קובץ התצורה של Firebase מכיל מזהים ייחודיים של הפרויקט, אבל הם לא סודיים. למידע נוסף על קובץ התצורה הזה, אפשר לעיין במאמר הסבר על פרויקטים ב-Firebase.
תמיד אפשר להוריד מחדש את קובץ התצורה של Firebase.
חשוב לוודא שלא מצורפים תווים נוספים לשם של קובץ התצורה, כמו
(2)
.
כדי לאפשר לערכות ה-SDK של Firebase לגשת לערכים בקובץ התצורה
, צריך את הפלאגין של Google services Gradle (google-services.json google-services
).בקובץ Gradle ברמת השורש (ברמת הפרויקט) (
<project>/build.gradle.kts
או<project>/build.gradle
), מוסיפים את הפלאגין של שירותי Google כתלייה:plugins { id("com.android.application") version "7.3.0" apply false // ... // Add the dependency for the Google services Gradle plugin id("com.google.gms.google-services") version "4.4.2" apply false }
plugins { id 'com.android.application' version '7.3.0' apply false // ... // Add the dependency for the Google services Gradle plugin id 'com.google.gms.google-services' version '4.4.2' apply false }
בקובץ Gradle של המודול (ברמת האפליקציה) (בדרך כלל
<project>/<app-module>/build.gradle.kts
או<project>/<app-module>/build.gradle
), מוסיפים את הפלאגין של שירותי Google:plugins { id("com.android.application") // Add the Google services Gradle plugin id("com.google.gms.google-services") // ... }
plugins { id 'com.android.application' // Add the Google services Gradle plugin id 'com.google.gms.google-services' // ... }
שלב 4: מוסיפים לאפליקציה את ערכות ה-SDK של Firebase
בקובץ Gradle של המודול (ברמת האפליקציה) (בדרך כלל מדובר בקובץ app/build.gradle), מוסיפים את יחסי התלות של מוצרי Firebase שבהם רוצים להשתמש באפליקציה. מומלץ להשתמש ב-Firebase Android BoM כדי לשלוט בגרסאות של הספריות.
<project>/<app-module>/build.gradle.kts
<project>/<app-module>/build.gradle
dependencies { // ... // Import the Firebase BoM implementation(platform("com.google.firebase:firebase-bom:33.7.0")) // When using the BoM, you don't specify versions in Firebase library dependencies // Add the dependency for the Firebase SDK for Google Analytics implementation("com.google.firebase:firebase-analytics") // TODO: Add the dependencies for any other Firebase products you want to use // See https://firebase.google.com/docs/android/setup#available-libraries // For example, add the dependencies for Firebase Authentication and Cloud Firestore implementation("com.google.firebase:firebase-auth") implementation("com.google.firebase:firebase-firestore") }
כשמשתמשים ב-Firebase Android BoM, האפליקציה תמיד תשתמש בגרסאות תואמות של ספריות Firebase ל-Android.
מחפשים מודול ספרייה ספציפי ל-Kotlin? החל מ-אוקטובר 2023 (Firebase BoM 32.5.0), מפתחי Kotlin ומפתחי Java יוכלו להסתמך על מודול הספרייה הראשי (פרטים נוספים זמינים בשאלות הנפוצות לגבי היוזמה הזו).
dependencies { // ... // Import the Firebase BoM implementation(platform("com.google.firebase:firebase-bom:33.7.0")) // When using the BoM, you don't specify versions in Firebase library dependencies // TODO: Add the dependencies for Firebase products you want to use // See https://firebase.google.com/docs/android/setup#available-libraries // For example, add the dependencies for Firebase Authentication and Cloud Firestore implementation("com.google.firebase:firebase-auth") implementation("com.google.firebase:firebase-firestore") }
כשמשתמשים ב-Firebase Android BoM, האפליקציה תמיד תשתמש בגרסאות תואמות של ספריות Firebase ל-Android.
מחפשים מודול ספרייה ספציפי ל-Kotlin? החל מ-אוקטובר 2023 (Firebase BoM 32.5.0), מפתחי Kotlin ומפתחי Java יוכלו להסתמך על מודול הספרייה הראשי (פרטים נוספים זמינים בשאלות הנפוצות לגבי היוזמה הזו).
אחרי שמוסיפים את יחסי התלות של המוצרים שבהם רוצים להשתמש, מסנכרנים את הפרויקט ל-Android עם קובצי Gradle.
האם מוצגת שגיאת build לגבי תמיכה ב-invoke-custom והפעלת ביטול הסוכרה (desugaring)? כך פותרים את הבעיה.
ב-builds של Gradle שמשתמשים בפלאגין Android Gradle (AGP) בגרסה 4.2 ואילך, צריך להפעיל תמיכה ב-Java 8. אחרת, בפרויקטים האלה ל-Android תופיע הודעת שגיאה ב-build כשמוסיפים את Firebase SDK.
כדי לפתור את התקלה ב-build, אפשר לפעול לפי אחת משתי האפשרויות הבאות:
- מוסיפים את הערך של
compileOptions
שמופיע בהודעת השגיאה לקובץbuild.gradle.kts
אוbuild.gradle
ברמת האפליקציה. - צריך להגדיל את הערך של
minSdk
בפרויקט Android ל-26 ומעלה.
מידע נוסף על הכישלון הזה ב-build זמין בתשובות לשאלות הנפוצות האלה.
- מוסיפים את הערך של
זהו זה! אפשר לדלג קדימה כדי לבדוק את השלבים הבאים המומלצים.
אם נתקלתם בבעיות בהגדרה, תוכלו לעיין בשאלות הנפוצות ובפתרון בעיות ב-Android.
אפשרות 2: הוספת Firebase באמצעות Firebase Assistant
הכלי של Firebase רושם את האפליקציה שלכם בפרויקט Firebase ומוסיף את הקבצים, הפלאגינים והיחסי התלות הנדרשים של Firebase לפרויקט Android – והכול מתוך Android Studio!
פותחים את פרויקט Android ב-Android Studio ומוודאים שאתם משתמשים בגרסאות העדכניות ביותר של Android Studio ושל Firebase Assistant:
- Windows או Linux: עזרה > בדיקת עדכונים
- macOS: Android Studio > חיפוש עדכונים
פותחים את Firebase Assistant: כלים > Firebase.
בחלונית Assistant, בוחרים מוצר Firebase שרוצים להוסיף לאפליקציה. מרחיבים את הקטע שלו ולוחצים על הקישור למדריך (לדוגמה,
Analytics > Log an Analytics event ).לוחצים על Connect to Firebase (קישור ל-Firebase) כדי לקשר את הפרויקט ל-Android ל-Firebase.
מה תהליך העבודה הזה עושה?
תהליך העבודה הזה יוצר באופן אוטומטי אפליקציית Android חדשה ב-Firebase באמצעות שם החבילה של האפליקציה. אפשר ליצור את האפליקציה החדשה ל-Android עם Firebase בפרויקט Firebase קיים או בפרויקט חדש.
הנה כמה טיפים להגדרת פרויקט Firebase:
כדאי לעיין בשיטות המומלצות שלנו להוספת אפליקציות לפרויקט Firebase, כולל דרכים לטיפול במספר וריאנטים.
אם אתם יוצרים פרויקט חדש, מומלץ מאוד להגדיר את Google Analytics בפרויקט. כך תוכלו ליהנות מחוויית שימוש אופטימלית במוצרים רבים של Firebase.
תהליך העבודה הזה מוסיף גם את קובץ התצורה של Android (
) של פרויקט Firebase לתיקיית המודול (ברמת האפליקציה) של האפליקציה.google-services.json
לוחצים על הלחצן כדי להוסיף את מוצר Firebase הרצוי (לדוגמה,
הוספת Analytics לאפליקציה ).
מסנכרנים את האפליקציה כדי לוודא שלכל הרכיבים התלויים יש את הגרסאות הנדרשות.
בחלונית Assistant, פועלים לפי שאר ההוראות להגדרה של מוצר Firebase שבחרתם.
אתם יכולים להוסיף כמה מוצרים של Firebase שתרצו באמצעות Firebase Assistant.
זהו זה! חשוב לעיין בהמלצות לפעולות הבאות.
אם נתקלתם בבעיות בהגדרה, תוכלו לעיין בשאלות הנפוצות ובפתרון בעיות ב-Android.
ספריות זמינות
בקטע הזה מפורטים מוצרי Firebase שנתמכים ב-Android והיחסים שלהם ל-Gradle. מידע נוסף על הספריות הבאות של Firebase ל-Android:
מאגר GitHub של Firebase Android SDK
חשוב לזכור: כשמשתמשים ב-Firebase Android BoM, לא מציינים גרסאות ספציפיות של ספריות כשמגדירים את יחסי התלות בספריות של Firebase בקובץ התצורה של ה-build ב-Gradle.
שירות או מוצר | תלות ב-Gradle | הגרסה העדכנית ביותר של |
להוסיף את Analytics? | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Firebase Android BoM (Bill of Materials) |
com.google.firebase:firebase-bom
הגרסה האחרונה של Firebase BoM מכילה את הגרסאות העדכניות ביותר של כל ספריית Firebase ל-Android. כדי לבדוק לאילו גרסאות ספרייה מותאמת גרסה ספציפית של BoM, אפשר לעיין בפתקים לגבי הגרסה הזו של BoM. |
33.7.0 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
AdMob | com.google.android.gms:play-services-ads | 23.6.0 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Analytics | com.google.firebase:firebase-analytics | 22.1.2 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
App Check ספק מותאם אישית | com.google.firebase:firebase-appcheck | 18.0.0 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ספק ניפוי הבאגים של App Check | com.google.firebase:firebase-appcheck-debug | 18.0.0 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
App Check ספק Play Integrity | com.google.firebase:firebase-appcheck-playintegrity | 18.0.0 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
App Distribution | com.google.firebase:firebase-appdistribution | 16.0.0-beta14 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
App Distribution API | com.google.firebase:firebase-appdistribution-api | 16.0.0-beta14 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
הפלאגין App Distribution | com.google.firebase:firebase-appdistribution-gradle | 5.0.0 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Authentication | com.google.firebase:firebase-auth | 23.1.0 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Cloud Firestore | com.google.firebase:firebase-firestore | 25.1.1 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Cloud Functions for Firebase Client SDK | com.google.firebase:firebase-functions | 21.1.0 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Cloud Messaging | com.google.firebase:firebase-messaging | 24.1.0 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Cloud Storage | com.google.firebase:firebase-storage | 21.0.1 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Crashlytics | com.google.firebase:firebase-crashlytics | 19.3.0 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Crashlytics NDK | com.google.firebase:firebase-crashlytics-ndk | 19.3.0 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
הפלאגין Crashlytics | com.google.firebase:firebase-crashlytics-gradle | 3.0.2 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
תמיכה במודולים של תכונות דינמיות | com.google.firebase:firebase-dynamic-module-support | 16.0.0-beta03 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Dynamic Links | com.google.firebase:firebase-dynamic-links | 22.1.0 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-App Messaging | com.google.firebase:firebase-inappmessaging | 21.0.1 | (חובה) |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-App Messaging רשת המדיה | com.google.firebase:firebase-inappmessaging-display | 21.0.1 | (חובה) |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Firebase התקנות | com.google.firebase:firebase-installations | 18.0.0 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Firebase ML Model Downloader API | com.google.firebase:firebase-ml-modeldownloader | 25.0.1 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Performance Monitoring | com.google.firebase:firebase-perf | 21.0.3 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
הפלאגין Performance Monitoring | com.google.firebase:perf-plugin | 1.4.2 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Realtime Database | com.google.firebase:firebase-database | 21.0.0 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Remote Config | com.google.firebase:firebase-config | 22.0.1 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Vertex AI in Firebase | com.google.firebase:firebase-vertexai | 16.0.2 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
הפלאגין של Google Play Services | com.google.gms:google-services | 4.4.2 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ספריות לא נתמכות | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
App Check ספק SafetyNet | com.google.firebase:firebase-appcheck-safetynet | 16.1.2 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
App Indexing | com.google.firebase:firebase-appindexing | 20.0.0 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
מודולים של Firebase KTX
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ספריות של Firebase ML Kit
|
השלבים הבאים
מוסיפים את שירותי Firebase לאפליקציה:
Analytics – קבלת תובנות על התנהגות המשתמשים.
מגדירים תהליך אימות משתמש באמצעות Authentication.
לשמור נתונים, כמו פרטי משתמשים, באמצעות Cloud Firestore או Realtime Database.
אחסון קבצים, כמו תמונות וסרטונים, באמצעות Cloud Storage.
הפעלת קוד לקצה העורפי שפועל בסביבה מאובטחת באמצעות Cloud Functions.
שולחים התראות באמצעות Cloud Messaging.
Crashlytics – מתי האפליקציה קורסת ומדוע
מידע נוסף על Firebase:
במאמר הסבר על פרויקטים ב-Firebase מוסבר בהרחבה על פרויקטים ב-Firebase ועל שיטות מומלצות לניהול פרויקטים.
אם יש לכם שאלות לגבי מושגים לא מוכרים או ספציפיים לפיתוח ב-Firebase וב-Android, תוכלו לקרוא את המאמר מידע נוסף על Android ו-Firebase.
Codelab של Firebase ל-Android – ניסיון מעשי.
מידע נוסף זמין בקורס Firebase בסופ'.
הכנה להשקת האפליקציה:
- מגדירים התראות תקציב לפרויקט במסוף Google Cloud.
- במסוף Firebase, אפשר לעקוב אחרי לוח הבקרה של השימוש והחיוב כדי לקבל תמונה כללית של השימוש בפרויקט במספר שירותי Firebase.
- כדאי לעיין ברשימת המשימות להשקה ב-Firebase.
נתקלתם בבעיות ב-Firebase ובפרויקט Android? פתרון בעיות ושאלות נפוצות בנושא Android