1. לפני שמתחילים
ב-codelab הזה תלמדו איך להוסיף לאפליקציה את היכולת ליצור אינטראקציה עם המשתמשים, בין אם הם משתמשים באפליקציה בחזית או שהאפליקציה פועלת ברקע.
דרישות מוקדמות
ללא
מה תלמדו
- הוספת Firebase לאפליקציית Android
- הוספת יחסי תלות של FCM ו-FIAM
- שליחת הודעת בדיקה של FCM לאפליקציה
- שליחת הודעת בדיקה של FIAM לאפליקציה
מה צריך
- Android Studio 4.1
- מכשיר Android או אמולטור
2. שנתחיל?
קבלת קוד לדוגמה
משכפלים את המאגר ב-GitHub משורת הפקודה:
ייבוא אפליקציה לתחילת הדרך
ב-Android Studio, בוחרים את הספרייה codelab-fcm-and-fiam
( ). זו הספרייה ששוכפלה בשלב הקודם (File > Open > .../codelab-fcm-and-fiam).
עכשיו פרויקט ה-FcmAndFiam אמור להיפתח ב-Android Studio. אם מוצגת אזהרה לגבי קובץ google-services.json חסר, אין מה לדאוג. היא תתווסף בשלב הבא.
3. הגדרת פרויקט Firebase והאפליקציה לשימוש ב-Firebase
יצירת פרויקט Firebase
- נכנסים למסוף Firebase באמצעות חשבון Google.
- לוחצים על הלחצן ליצירת פרויקט חדש ומזינים שם לפרויקט (לדוגמה,
Send messages codelab
). - לוחצים על המשך.
- אם מוצגת בקשה לעשות זאת, קוראים ומאשרים את התנאים של Firebase, ואז לוחצים על המשך.
- (אופציונלי) מפעילים את העזרה מבוססת-AI במסוף Firebase (שנקראת Gemini ב-Firebase).
- כדי להשתמש במוצרי Firebase בצורה אופטימלית, צריך להשתמש ב-Google Analytics. לכן, חשוב להשאיר את המתג במצב מופעל באפשרות של Google Analytics. פועלים לפי ההוראות במסך כדי להגדיר את Google Analytics.
- לוחצים על יצירת פרויקט, מחכים שהפרויקט יוקצה ולוחצים על המשך.
הוספת Firebase לאפליקציה
- במסך הסקירה הכללית של הפרויקט החדש, לוחצים על סמל Android כדי להפעיל את תהליך ההגדרה.
- מזינים את שם החבילה של ה-codelab:
com.google.firebase.codelab.fcmandfiam
- אחרי שמוסיפים את שם החבילה, לוחצים על Register App (רישום האפליקציה) ואז על Download google-services.json (הורדת קובץ google-services.json) כדי לקבל את קובץ ההגדרות של Firebase ל-Android. לאחר מכן מעתיקים את הקובץ google-services.json לספרייה
app
בפרויקט. אחרי שהקובץ יורד, אפשר ללחוץ על דילוג כדי לדלג על השלבים הבאים שמוצגים במסוף (הם כבר בוצעו בשבילכם בפרויקט build-android-start). - מוסיפים את הפלאגין google-services לאפליקציה**
הפלאגין google-services משתמש בקובץ google-services.json כדי להגדיר את האפליקציה לשימוש ב-Firebase. התלות בפלאגין google-services והפלאגין עצמו כבר אמורים להיות מתווספים לקובצי ה-build ברמת הפרויקט והאפליקציה בהתאמה. מאשרים את הרשומות הבאות:build.gradle app/build.gradlebuildscript { ... dependencies { ... classpath 'com.google.gms:google-services:4.3.8' } }
plugins { ... id: 'com.google.gms.google-services' }
הוספת יחסי תלות
FCM ו-FIAM דורשים את יחסי התלות הבאים. התלויות האלה כבר אמורות להיות מתווספות לקובץ ה-build ברמת האפליקציה. מוודאים שיחסי התלות הבאים נוספו:
app/build.gradle
dependencies {
...
implementation platform('com.google.firebase:firebase-bom:28.4.2')
implementation 'com.google.firebase:firebase-analytics'
implementation 'com.google.firebase:firebase-messaging'
implementation 'com.google.firebase:firebase-inappmessaging-display'
}
סנכרון הפרויקט עם קובצי gradle
כדי לוודא שכל התלויות זמינות לאפליקציה, בשלב הזה צריך לסנכרן את הפרויקט עם קובצי gradle. בסרגל הכלים של Android Studio, בוחרים באפשרות File > Sync Project with Gradle Files (קובץ > סנכרון הפרויקט עם קובצי Gradle).
4. מזהי יומנים
התכונות 'העברת הודעות בענן ב-Firebase' ו'העברת הודעות בתוך האפליקציה ב-Firebase' משתמשות במזהים כדי לשלוח הודעות לאפליקציות. ב-FCM נעשה שימוש בטוקן רישום, וב-FIAM נעשה שימוש במזהה התקנה.
- בקטע
MainActivity.kt
מחליפים את הערך TODO בקוד שלמטה כדי לרשום ביומן את המזהים שנדרשים לשליחת הודעות:
FirebaseMessaging.getInstance().token.addOnCompleteListener { regTokenTask ->
if (regTokenTask.isSuccessful) {
Log.d(TAG, "FCM registration token: ${regTokenTask.result}")
} else {
Log.e(TAG, "Unable to retrieve registration token",
regTokenTask.exception)
}
}
FirebaseInstallations.getInstance().id.addOnCompleteListener { installationIdTask ->
if (installationIdTask.isSuccessful) {
Log.d(TAG, "Firebase Installations ID: ${installationIdTask.result}")
} else {
Log.e(TAG, "Unable to retrieve installations ID",
installationIdTask.exception)
}
}
- מחברים את מכשיר Android ולוחצים על Run (הפעלה) (
) בסרגל הכלים של Android Studio. הקשה על הלחצן Log Identifiers (רישום מזהים) תרשום ב-logcat את טוקן הרישום של FCM ואת מזהה ההתקנות של Firebase. הפלט אמור להיראות כך:
D/FcmAndFiam: Firebase Installations ID: emMc5...AsJfb
FCM registration token: emMc5LART6GV7...r0Q
5. שליחת הודעת בדיקה ב-FCM
אפשר לשלוח הודעות FCM גם ממסוף Firebase וגם מ-FCM REST API. ב-codelab הזה נכתוב הודעת התראה של FCM ונשלח אותה למכשיר שלנו. הודעות התראה הן הודעות שמוצגות באזור ההתראות של המערכת. שליחת הודעת בדיקה ב-FCM באמצעות:
- מוודאים שהאפליקציה פועלת ברקע (עוברים למסך הבית)
- עוברים אל מסוף Firebase ובוחרים באפשרות Cloud Messaging בתפריט הניווט הימני.
- בוחרים באפשרות שליחת ההודעה הראשונה.
- מוסיפים כותרת וגוף להודעה ולוחצים על שליחת הודעת בדיקה.
- מוסיפים את טוקן הרישום של FCM ולוחצים על test (בדיקה).
- התבוננות בהתראה שמוצגת במכשיר
- הקשה על ההתראה פותחת את האפליקציה
6. שליחת הודעה לבדיקה של FIAM
אפשר להגדיר הפעלה של הודעות באפליקציה ב-Firebase כתוצאה ממגוון אירועים שקשורים למשתמשים. הודעת הבדיקה משתמשת באירוע פתיחת האפליקציה כדי להפעיל את ההודעה בתוך האפליקציה. כדי לשלוח הודעת בדיקה של FIAM:
- מוודאים שהאפליקציה פועלת ברקע (עוברים למסך הבית)
- עוברים אל מסוף Firebase ובוחרים באפשרות 'העברת הודעות בתוך האפליקציה' בתפריט הניווט הימני.
- בוחרים באפשרות יצירת הקמפיין הראשון.
- בוחרים את הקמפיין של הבאנר העליון ומזינים את הכותרת ואת תוכן ההודעה
- לוחצים על בדיקה במכשיר.
- מוסיפים את מזהה ההתקנות ולוחצים על בדיקה.
- פתיחת האפליקציה מחדש
- הצגת הודעה באפליקציה
7. מזל טוב
מזל טוב, שלחת בהצלחה הודעות FCM ו-FIAM. עכשיו אתם יודעים איך ליצור אינטראקציה עם המשתמשים, בין אם הם משתמשים באפליקציה בחזית או שהאפליקציה פועלת ברקע.
קריאה נוספת
מה השלב הבא
- שליחת הודעות למשתמשים באפליקציית Android שלכם.