ใช้ 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 ให้กับโปรเจ็กต์

  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 ในโครงการของคุณ หลังจากดาวน์โหลดไฟล์แล้ว คุณสามารถคลิก ข้าม เพื่อไปยังขั้นตอนถัดไปที่แสดงในคอนโซล (ซึ่งได้ทำไปแล้วในโปรเจ็กต์ build-android-start)

เพิ่มปลั๊กอินบริการของ Google ในแอปของคุณ

ปลั๊กอิน 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'
}

เพิ่มการพึ่งพา

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

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 ณ จุดนี้ เลือก ไฟล์ > ซิงค์โปรเจ็กต์ด้วย Gradle Files จากแถบเครื่องมือ Android Studio

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

Firebase Cloud Messaging และ Firebase In App Messaging ทั้งคู่ใช้ตัวระบุเพื่อส่งข้อความไปยังแอพ FCM ใช้โทเค็นการลงทะเบียนและ FIAM ใช้ ID การติดตั้ง

  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 ของคุณแล้วคลิก เรียกใช้ ( execut.png ) ในแถบเครื่องมือ Android Studio การแตะที่ปุ่ม ตัวระบุ บันทึกจะบันทึกโทเค็นการลงทะเบียน FCM และ ID การติดตั้ง Firebase ไปยัง logcat ผลลัพธ์ควรมีลักษณะดังนี้:
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. เพิ่ม ID การติดตั้งแล้วคลิก ทดสอบ

24b101edfab47144.png

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

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

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

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

อะไรต่อไป

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

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