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.
- בוחרים באפשרות Add project (הוספת פרויקט).
- בוחרים או מזינים שם לפרויקט.
- מבצעים את שאר שלבי ההגדרה במסוף Firebase ולוחצים על Create project (יצירת פרויקט) (או Add Firebase, אם משתמשים בפרויקט Google קיים).
- במסך הסקירה הכללית של הפרויקט החדש, לוחצים על סמל Android כדי להפעיל את תהליך ההגדרה.
- יש להזין את שם החבילה של ה-Codelab:
com.google.firebase.codelab.fcmandfiam
הוספת קובץ google-services.json לאפליקציה
אחרי שמוסיפים את שם החבילה, לוחצים על Register App ולאחר מכן הורד את 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 בשלב הזה. בוחרים באפשרות File > (קובץ >) סנכרון הפרויקט עם קובצי Gradle מסרגל הכלים של Android Studio.
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 Identifies (מזהי רישום) תרשום את אסימון הרישום של FCM ואת מזהה Firebase Installations ל-Logcat. הפלט אמור להיראות כך:
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 ולוחצים על בדיקה.
- צפייה בהתראה במסך המכשיר
- הקשה על ההתראה פותחת את האפליקציה
6. שליחת הודעת בדיקה של FIAM
ההפעלה של Firebase בתוך האפליקציה 'העברת הודעות באפליקציה' יכולה לנבוע מאירועים שונים של המשתמש. בהודעת הבדיקה נעשה שימוש באירוע בפתיחת האפליקציה כדי להפעיל את ההודעה בתוך האפליקציה. שליחת הודעת בדיקה ב-FIAM באמצעות:
- מוודאים שהאפליקציה פועלת ברקע (עוברים למסך הבית)
- נכנסים למסוף Firebase ובוחרים באפשרות 'העברת הודעות בתוך האפליקציה' בתפריט הניווט הימני.
- בוחרים באפשרות יצירת הקמפיין הראשון.
- בוחרים קמפיין באנר עליון ומזינים את הכותרת ואת תוכן ההודעה
- לוחצים על בדיקה במכשיר.
- מוסיפים מזהה התקנות ולוחצים על בדיקה.
- פתיחת האפליקציה מחדש
- צפייה בהודעה באפליקציה
7. מזל טוב
מזל טוב, שלחת בהצלחה הודעות של FCM וגם הודעות של FIAM. עכשיו אתם יודעים איך לשמור על רמת העניין של המשתמשים באפליקציה, גם כשהם משתמשים בה בחזית וגם כשהיא פועלת ברקע.
מקורות מידע נוספים
המאמרים הבאים
- שליחת הודעות למשתמשים באפליקציה שלכם ל-Android.