1. לפני שמתחילים
בקודלאב הזה תלמדו איך להוסיף את היכולת לעורר עניין בקרב המשתמשים, גם כשהם משתמשים באפליקציה בחזית וגם כשהיא ברקע.
דרישות מוקדמות
ללא
מה תלמדו
- הוספת 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 ולוחצים על Create project (יצירת פרויקט) (או Add Firebase, אם משתמשים בפרויקט Google קיים).
- במסך הסקירה הכללית של הפרויקט החדש, לוחצים על סמל Android כדי להפעיל את תהליך העבודה להגדרה.
- מזינים את שם החבילה של ה-codelab:
com.google.firebase.codelab.fcmandfiam
הוספת קובץ google-services.json לאפליקציה
אחרי שמוסיפים את שם החבילה, לוחצים על Register App then Download google-services.json כדי לקבל את קובץ התצורה של Firebase ל-Android, ולאחר מכן מעתיקים את הקובץ google-services.json לספרייה app
בפרויקט. אחרי הורדת הקובץ, אפשר ללחוץ על Skip (דילוג) כדי לדלג על השלבים הבאים שמוצגים במסוף (הם כבר בוצעו בשבילכם בפרויקט build-android-start).
הוספת הפלאגין google-services לאפליקציה
הפלאגין google-services משתמש בקובץ google-services.json כדי להגדיר את האפליקציה לשימוש ב-Firebase. כבר אמורה להיות תוספת של התלות בפלאגין google-services והפלאגין עצמו לקובצי ה-build ברמת הפרויקט וברמת האפליקציה, בהתאמה. מאשרים את הרשומות הבאות:
build.gradle
buildscript {
...
dependencies {
...
classpath 'com.google.gms:google-services:4.3.8'
}
}
app/build.gradle
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.
4. מזהי יומנים
גם ב-Firebase Cloud Messaging וגם ב-Firebase In App Messaging נעשה שימוש במזהים כדי לשלוח הודעות לאפליקציות. ב-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 ולוחצים על הפעלה ( ) בסרגל הכלים של 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. בסדנת הקוד הזו נכתוב הודעה של התראה ב-FCM ונשלח אותה למכשיר שלנו. הודעות התראה הן הודעות שמוצגות באזור ההתראות של המערכת. כדי לשלוח הודעת בדיקה ב-FCM:
- מוודאים שהאפליקציה פועלת ברקע (עוברים למסך הבית)
- נכנסים למסוף Firebase ובוחרים באפשרות Cloud Messaging בתפריט הניווט הימני.
- בוחרים באפשרות שליחת ההודעה הראשונה.
- מוסיפים כותרת וגוף להודעה ולוחצים על שליחת הודעת בדיקה.
- מוסיפים את אסימון הרישום של FCM ולוחצים על test.
- צפייה בהתראה במכשיר
- הקשה על ההתראה פותחת את האפליקציה
6. שליחת הודעת FIAM לבדיקה
אפשר להפעיל את התכונה 'העברת הודעות בתוך האפליקציה' ב-Firebase כתוצאה ממגוון אירועים של משתמשים. בהודעת הבדיקה נעשה שימוש באירוע פתיחת האפליקציה כדי להפעיל את ההודעה באפליקציה. כדי לשלוח הודעת FIAM לבדיקה:
- מוודאים שהאפליקציה פועלת ברקע (עוברים למסך הבית)
- נכנסים למסוף Firebase ובוחרים באפשרות 'העברת הודעות בתוך האפליקציה' בתפריט הניווט הימני.
- בוחרים באפשרות יצירת הקמפיין הראשון.
- בוחרים קמפיין באנר עליון ומזינים את הכותרת ואת גוף ההודעה.
- לוחצים על בדיקה במכשיר.
- מוסיפים את מזהה ההתקנות ולוחצים על בדיקה.
- פתיחה מחדש של האפליקציה
- צפייה בהודעה באפליקציה
7. מזל טוב
מזל טוב, שלחת בהצלחה הודעות גם ל-FCM וגם ל-FIAM. עכשיו אתם יודעים איך לשמור על רמת העניין של המשתמשים באפליקציה, גם כשהם משתמשים בה בחזית וגם כשהיא פועלת ברקע.
מקורות מידע נוספים
מה השלב הבא
- לשלוח הודעות למשתמשים באפליקציה שלכם ל-Android.