שימוש ב-FCM וב-FIAM כדי לשלוח הודעות למשתמשים

1. לפני שמתחילים

ב-codelab הזה תלמדו איך להוסיף לאפליקציה את היכולת ליצור אינטראקציה עם המשתמשים, בין אם הם משתמשים באפליקציה בחזית או שהאפליקציה פועלת ברקע.

206c7ecece550bde.png

דרישות מוקדמות

ללא

מה תלמדו

  • הוספת Firebase לאפליקציית Android
  • הוספת יחסי תלות של FCM ו-FIAM
  • שליחת הודעת בדיקה של FCM לאפליקציה
  • שליחת הודעת בדיקה של FIAM לאפליקציה

מה צריך

  • ‫Android Studio 4.1
  • מכשיר Android או אמולטור

2. שנתחיל?

קבלת קוד לדוגמה

משכפלים את המאגר ב-GitHub משורת הפקודה:

ייבוא אפליקציה לתחילת הדרך

ב-Android Studio, בוחרים את הספרייה codelab-fcm-and-fiam ( android_studio_folder.png). זו הספרייה ששוכפלה בשלב הקודם (File > Open > .../codelab-fcm-and-fiam).

עכשיו פרויקט ה-FcmAndFiam אמור להיפתח ב-Android Studio. אם מוצגת אזהרה לגבי קובץ google-services.json חסר, אין מה לדאוג. היא תתווסף בשלב הבא.

3. הגדרת פרויקט Firebase והאפליקציה לשימוש ב-Firebase

יצירת פרויקט Firebase

  1. נכנסים למסוף Firebase באמצעות חשבון Google.
  2. לוחצים על הלחצן ליצירת פרויקט חדש ומזינים שם לפרויקט (לדוגמה, Send messages codelab).
  3. לוחצים על המשך.
  4. אם מוצגת בקשה לעשות זאת, קוראים ומאשרים את התנאים של Firebase, ואז לוחצים על המשך.
  5. (אופציונלי) מפעילים את העזרה מבוססת-AI במסוף Firebase (שנקראת Gemini ב-Firebase).
  6. כדי להשתמש במוצרי Firebase בצורה אופטימלית, צריך להשתמש ב-Google Analytics. לכן, חשוב להשאיר את המתג במצב מופעל באפשרות של Google Analytics. פועלים לפי ההוראות במסך כדי להגדיר את Google Analytics.
  7. לוחצים על יצירת פרויקט, מחכים שהפרויקט יוקצה ולוחצים על המשך.

הוספת Firebase לאפליקציה

  1. במסך הסקירה הכללית של הפרויקט החדש, לוחצים על סמל Android כדי להפעיל את תהליך ההגדרה.
  2. מזינים את שם החבילה של ה-codelab: com.google.firebase.codelab.fcmandfiam
  3. אחרי שמוסיפים את שם החבילה, לוחצים על Register App (רישום האפליקציה) ואז על Download google-services.json (הורדת קובץ google-services.json) כדי לקבל את קובץ ההגדרות של Firebase ל-Android. לאחר מכן מעתיקים את הקובץ google-services.json לספרייה app בפרויקט. אחרי שהקובץ יורד, אפשר ללחוץ על דילוג כדי לדלג על השלבים הבאים שמוצגים במסוף (הם כבר בוצעו בשבילכם בפרויקט build-android-start).
  4. מוסיפים את הפלאגין 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 (קובץ > סנכרון הפרויקט עם קובצי Gradle).

4. מזהי יומנים

התכונות 'העברת הודעות בענן ב-Firebase' ו'העברת הודעות בתוך האפליקציה ב-Firebase' משתמשות במזהים כדי לשלוח הודעות לאפליקציות. ב-FCM נעשה שימוש בטוקן רישום, וב-FIAM נעשה שימוש במזהה התקנה.

  1. בקטע 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)
   }
}
  1. מחברים את מכשיר Android ולוחצים על Run (הפעלה) ( execute.png) בסרגל הכלים של 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 באמצעות:

  1. מוודאים שהאפליקציה פועלת ברקע (עוברים למסך הבית)
  2. עוברים אל מסוף Firebase ובוחרים באפשרות Cloud Messaging בתפריט הניווט הימני.
  3. בוחרים באפשרות שליחת ההודעה הראשונה.
  4. מוסיפים כותרת וגוף להודעה ולוחצים על שליחת הודעת בדיקה.

207ced65f5245ada.png

  1. מוסיפים את טוקן הרישום של FCM ולוחצים על test (בדיקה).

f3556c6a8a6453fe.png

  1. התבוננות בהתראה שמוצגת במכשיר
  2. הקשה על ההתראה פותחת את האפליקציה

6. שליחת הודעה לבדיקה של FIAM

אפשר להגדיר הפעלה של הודעות באפליקציה ב-Firebase כתוצאה ממגוון אירועים שקשורים למשתמשים. הודעת הבדיקה משתמשת באירוע פתיחת האפליקציה כדי להפעיל את ההודעה בתוך האפליקציה. כדי לשלוח הודעת בדיקה של FIAM:

  1. מוודאים שהאפליקציה פועלת ברקע (עוברים למסך הבית)
  2. עוברים אל מסוף Firebase ובוחרים באפשרות 'העברת הודעות בתוך האפליקציה' בתפריט הניווט הימני.
  3. בוחרים באפשרות יצירת הקמפיין הראשון.
  4. בוחרים את הקמפיין של הבאנר העליון ומזינים את הכותרת ואת תוכן ההודעה
  5. לוחצים על בדיקה במכשיר.

69f6ea5efff240d1.png

  1. מוסיפים את מזהה ההתקנות ולוחצים על בדיקה.

24b101edfab47144.png

  1. פתיחת האפליקציה מחדש
  2. הצגת הודעה באפליקציה

7. מזל טוב

מזל טוב, שלחת בהצלחה הודעות FCM ו-FIAM. עכשיו אתם יודעים איך ליצור אינטראקציה עם המשתמשים, בין אם הם משתמשים באפליקציה בחזית או שהאפליקציה פועלת ברקע.

קריאה נוספת

מה השלב הבא

  • שליחת הודעות למשתמשים באפליקציית Android שלכם.

מאמרי עזרה