ใช้ FCM และ FIAM เพื่อส่งข้อความถึงผู้ใช้

1. ก่อนเริ่มต้น

ใน Codelab นี้ คุณจะได้เรียนรู้วิธีเพิ่มความสามารถในการมีส่วนร่วมกับผู้ใช้ ไม่ว่าผู้ใช้จะใช้แอปในเบื้องหน้าหรือแอปของคุณอยู่ในเบื้องหลัง

206c7ecece550bde.png

ข้อกำหนดเบื้องต้น

ไม่มี

สิ่งที่คุณจะได้เรียนรู้

  • เพิ่ม Firebase ไปยังแอป Android ของคุณ
  • เพิ่มทรัพยากร Dependency ของ FCM และ FIAM
  • ส่งข้อความ FCM ทดสอบไปยังแอปของคุณ
  • ส่งข้อความ FIAM ทดสอบไปยังแอปของคุณ

สิ่งที่คุณต้องมี

  • Android Studio 4.1
  • อุปกรณ์ Android หรือโปรแกรมจำลอง

2. เริ่มต้นใช้งาน

รับโค้ดตัวอย่าง

โคลนที่เก็บ GitHub จากบรรทัดคำสั่งดังนี้

นำเข้าแอปเริ่มต้น

จาก Android Studio ให้เลือกไดเรกทอรี codelab-fcm-and-fiam ( android_studio_โฟลเดอร์.png) ซึ่งจะเป็นตัวโคลนในขั้นตอนก่อนหน้า (File > Open > .../codelab-fcm-and-fiam)

ตอนนี้คุณควรเปิดโปรเจ็กต์ FcmAndFiam ใน Android Studio แล้ว หากคุณเห็นคำเตือนว่าไฟล์ google-services.json หายไป ไม่ต้องกังวล ระบบจะเพิ่มข้อมูลดังกล่าวในขั้นตอนถัดไป

3. สร้างโปรเจ็กต์คอนโซล Firebase

เพิ่ม Firebase ไปยังโปรเจ็กต์

  1. ไปที่คอนโซล Firebase
  2. เลือกเพิ่มโปรเจ็กต์
  3. เลือกหรือป้อนชื่อโปรเจ็กต์
  4. ทำตามขั้นตอนการตั้งค่าที่เหลือในคอนโซล Firebase จากนั้นคลิกสร้างโปรเจ็กต์ (หรือเพิ่ม Firebase หากคุณใช้โปรเจ็กต์ Google ที่มีอยู่)
  5. จากหน้าจอภาพรวมของโปรเจ็กต์ใหม่ ให้คลิกไอคอน Android เพื่อเปิดเวิร์กโฟลว์การตั้งค่า
  6. ป้อนชื่อแพ็กเกจของ Codelab: com.google.firebase.codelab.fcmandfiam

เพิ่มไฟล์ google-services.json ในแอป

หลังจากเพิ่มชื่อแพ็กเกจแล้ว ให้คลิกลงทะเบียนแอปแล้วดาวน์โหลด google-services.json เพื่อรับไฟล์การกำหนดค่า Firebase สำหรับ Android ของคุณ จากนั้นคัดลอกไฟล์ google-services.json ไปยังไดเรกทอรี app ในโปรเจ็กต์ของคุณ หลังจากดาวน์โหลดไฟล์แล้ว คุณสามารถคลิกข้ามเพื่อไปยังขั้นตอนถัดไปที่แสดงในคอนโซล (ดำเนินการให้คุณแล้วในโปรเจ็กต์บิลด์ Android-start)

เพิ่มปลั๊กอิน google-services ในแอป

ปลั๊กอิน google-services ใช้ไฟล์ google-services.json เพื่อกำหนดค่าแอปพลิเคชันของคุณให้ใช้ Firebase ควรเพิ่มการอ้างอิงปลั๊กอิน google-services และตัวปลั๊กอินลงในไฟล์บิลด์ระดับโปรเจ็กต์และแอปตามลำดับ ยืนยันรายการต่อไปนี้

Build.gradle

buildscript {
  ...
  dependencies {
    ...
    classpath 'com.google.gms:google-services:4.3.8'
  }
}

app/build.gradle

plugins {
  ...
  id: 'com.google.gms.google-services'
}

เพิ่มทรัพยากร Dependency

FCM และ FIAM ต้องการทรัพยากร Dependency ต่อไปนี้ ควรเพิ่มทรัพยากร Dependency เหล่านี้ไปยังไฟล์บิลด์ระดับแอปแล้ว ยืนยันว่าเพิ่มทรัพยากร Dependency ต่อไปนี้แล้ว

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 ในขั้นตอนนี้ เพื่อให้มั่นใจว่าทรัพยากร Dependency ทั้งหมดพร้อมใช้งานสำหรับแอป เลือก ไฟล์ > ซิงค์โปรเจ็กต์ด้วยไฟล์ Gradle จากแถบเครื่องมือของ Android Studio

4. ตัวระบุบันทึก

ทั้ง Firebase Cloud Messaging และ Firebase In App Messaging ใช้ตัวระบุเพื่อส่งข้อความไปยังแอป 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 และคลิกเรียกใช้ ( ดำเนินการ.png) ในแถบเครื่องมือ Android Studio การแตะปุ่มตัวระบุบันทึกจะบันทึกโทเค็นการลงทะเบียน 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 แล้วคลิกทดสอบ

f3556c6a8a6453fe.png

  1. สังเกตการแจ้งเตือนการแสดงผลในอุปกรณ์
  2. แตะที่การแจ้งเตือนเพื่อเปิดแอป

6. ส่งข้อความ FIAM ทดสอบ

Firebase In App Messaging สามารถทริกเกอร์ได้จากเหตุการณ์ของผู้ใช้ที่หลากหลาย ข้อความทดสอบใช้เหตุการณ์เปิดแอปเพื่อทริกเกอร์ข้อความในแอป ส่งข้อความ FIAM ทดสอบทาง

  1. ตรวจสอบว่าแอปอยู่ในเบื้องหลัง (ไปที่หน้าจอหลัก)
  2. ไปที่คอนโซล Firebase แล้วเลือกการรับส่งข้อความในแอปในการนำทางด้านซ้าย
  3. เลือกสร้างแคมเปญแรกของคุณ
  4. เลือกแคมเปญแบนเนอร์ด้านบนแล้วป้อนชื่อและเนื้อหาของข้อความ
  5. คลิกทดสอบในอุปกรณ์

69f6ea5efff240d1.png

  1. เพิ่มรหัสการติดตั้ง แล้วคลิกทดสอบ

24b101edfab47144.png

  1. เปิดแอปอีกครั้ง
  2. สังเกตในข้อความแอป

7. ขอแสดงความยินดี

ขอแสดงความยินดี คุณส่งทั้งข้อความ FCM และ FIAM สำเร็จแล้ว ตอนนี้คุณทราบวิธีมีส่วนร่วมกับผู้ใช้แล้ว ไม่ว่าพวกเขาจะใช้แอปของคุณในเบื้องหน้าหรือแอปของคุณอยู่ในเบื้องหลัง

อ่านเพิ่มเติม

ขั้นต่อไปคืออะไร

  • ส่งข้อความถึงผู้ใช้ในแอป Android ของคุณเอง

เอกสารอ้างอิง