หน้านี้จะให้ความช่วยเหลือในการแก้ปัญหาและตอบคำถามที่พบบ่อยเกี่ยวกับ Cloud Messaging
FCM กับเครื่องมือแต่งการแจ้งเตือนแตกต่างกันอย่างไร
Firebase Cloud Messaging มีชุดความสามารถในการรับส่งข้อความที่สมบูรณ์
ผ่าน SDK ไคลเอ็นต์และโปรโตคอลเซิร์ฟเวอร์ HTTP
สำหรับอุปกรณ์ที่มีข้อกำหนดการรับส่งข้อความที่ซับซ้อนกว่า
FCM เป็นตัวเลือกที่เหมาะสม
เครื่องมือเขียนการแจ้งเตือนเป็นโซลูชันการรับส่งข้อความแบบ Serverless ที่มีขนาดเล็ก
ซึ่งสร้างขึ้นบน Firebase Cloud Messaging Composer การแจ้งเตือนช่วยให้ผู้ใช้ส่งข้อความเพื่อดึงดูดและรักษาผู้ใช้ ส่งเสริมการเติบโตของแอป และสนับสนุนแคมเปญการตลาดได้ด้วยคอนโซลกราฟิกที่ใช้งานง่าย
และข้อกำหนดในการเขียนโค้ดที่ลดลง
| ความสามารถ |
|
เครื่องมือแต่งการแจ้งเตือน |
Cloud Messaging |
| เป้าหมาย |
อุปกรณ์เดียว |
|
|
|
ไคลเอ็นต์ที่สมัครใช้บริการหัวข้อ
(เช่น สภาพอากาศ) |
|
|
|
ไคลเอ็นต์ในกลุ่มผู้ใช้ที่กําหนดไว้ล่วงหน้า (แอป, เวอร์ชัน, ภาษา) |
|
|
|
ไคลเอ็นต์ในกลุ่มเป้าหมาย Analytics ที่ระบุ |
|
|
|
ไคลเอ็นต์ในกลุ่มอุปกรณ์ |
|
|
|
อัปสตรีมจากไคลเอ็นต์ไปยังเซิร์ฟเวอร์ |
|
|
| ประเภทข้อความ |
การแจ้งเตือนขนาดไม่เกิน 2 KB |
|
|
|
ข้อความข้อมูลขนาดไม่เกิน 4 KB |
|
|
| การนำส่ง |
ทันที |
|
|
|
เวลาท้องถิ่นของอุปกรณ์ไคลเอ็นต์ในอนาคต |
|
|
| ข้อมูลวิเคราะห์ |
คอลเล็กชันการวิเคราะห์การแจ้งเตือนที่มีอยู่ในตัวและการวิเคราะห์ Funnel
|
|
|
ฉันต้องใช้บริการอื่นๆ ของ Firebase เพื่อใช้ FCM ไหม
คุณสามารถใช้ Firebase Cloud Messaging เป็นคอมโพเนนต์แบบสแตนด์อโลนได้โดยไม่ต้องใช้
บริการอื่นๆ ของ Firebase
เหตุใดอุปกรณ์เป้าหมายของฉันจึง
ดูเหมือนจะไม่ได้รับข้อความ
หากดูเหมือนว่าอุปกรณ์ไม่ได้รับข้อความ ให้ตรวจสอบสาเหตุที่เป็นไปได้ 2 ประการต่อไปนี้ก่อน
การจัดการข้อความที่ทำงานอยู่เบื้องหน้าสำหรับข้อความแจ้งเตือน แอปไคลเอ็นต์ต้อง
เพิ่มตรรกะการจัดการข้อความเพื่อจัดการข้อความแจ้งเตือนเมื่อแอปอยู่ใน
เบื้องหน้าในอุปกรณ์ ดูรายละเอียดสำหรับ
iOS และ
Android
การจำกัดของไฟร์วอลล์เครือข่าย หากองค์กรมีไฟร์วอลล์ที่
จำกัดการรับส่งข้อมูลไปยังหรือจากอินเทอร์เน็ต คุณต้องกำหนดค่าไฟร์วอลล์เพื่ออนุญาต
การเชื่อมต่อกับ FCM เพื่อให้แอปไคลเอ็นต์ Firebase Cloud Messaging
รับข้อความได้ พอร์ตที่ต้องเปิดมีดังนี้
FCM มักใช้ 5228 แต่บางครั้งก็ใช้ 5229 และ 5230
FCM ไม่ได้ระบุ IP ที่เฉพาะเจาะจง ดังนั้นคุณควรอนุญาตให้ไฟร์วอลล์
ยอมรับการเชื่อมต่อขาออกกับที่อยู่ IP ทั้งหมดในบล็อก IP
ซึ่งแสดงใน ASN 15169 ของ Google
เหตุใดจึงไม่มีการเรียกใช้ onMessageReceived ในแอป Android ของฉัน
เมื่อแอปทำงานในเบื้องหลัง ข้อความ
การแจ้งเตือน
จะแสดงในถาดระบบ และระบบจะไม่เรียกใช้ onMessageReceived สำหรับข้อความแจ้งเตือนที่มีเพย์โหลดข้อมูล ข้อความแจ้งเตือนจะแสดงในถาดระบบ และสามารถเรียกข้อมูลที่รวมไว้กับข้อความแจ้งเตือนได้จาก Intent ที่เปิดขึ้นเมื่อผู้ใช้แตะการแจ้งเตือน
ดูข้อมูลเพิ่มเติมได้ที่รับและจัดการข้อความ
เหตุใดฉันจึงได้รับข้อผิดพลาด 404
เมื่อส่งข้อความไปยังอินสแตนซ์แอปที่ใช้งานอยู่ซึ่งกู้คืนจากข้อมูลสำรอง
FID (รหัสการติดตั้ง Firebase) คือตัวระบุของอินสแตนซ์แอป โดยค่าเริ่มต้น ระบบจะสำรองและกู้คืนข้อมูลการติดตั้ง Firebase
ดังนั้นในกรณีการกู้คืน
อินสแตนซ์แอปที่กู้คืนและอินสแตนซ์แอปเดิมจะใช้ FID เดียวกัน
เนื่องจาก FCM จัดเก็บโทเค็นเพียงรายการเดียวต่อ FID หากทั้งอินสแตนซ์แอปเดิม
และอินสแตนซ์แอปที่กู้คืนมาใช้งานอยู่ เมื่ออินสแตนซ์แอปหนึ่งลงทะเบียน
กับ FCM ระบบจะนำโทเค็นของอินสแตนซ์แอปอื่นออก ซึ่งทำให้เกิดข้อผิดพลาด 404
เราขอแนะนำให้นักพัฒนาแอปทำสิ่งต่อไปนี้ในแอป
- ยกเว้น
ข้อมูลการติดตั้ง Firebase ในข้อมูลสำรอง ระบบจะจัดเก็บข้อมูลการติดตั้ง Firebase
ไว้ใน
PersistedInstallation....json ชื่อไฟล์เป็นค่าคงที่สำหรับแอป ตัวอย่างเช่น <exclude domain="file" path="PersistedInstallation.W0R...GQ.json"
/>
Apple
ประกาศว่าจะเลิกใช้งานโปรโตคอลไบนารีเดิมสำหรับ APNs ฉันต้องทำอะไรไหม
ไม่ Firebase Cloud Messaging เปลี่ยนไปใช้โปรโตคอล APNs ที่อิงตาม HTTP/2 ในปี 2017
หากคุณใช้ FCM เพื่อส่งการแจ้งเตือนไปยังอุปกรณ์ iOS คุณก็ไม่จำเป็นต้องดำเนินการใดๆ
โควต้าและขีดจำกัดของ FCM
ฉันจะแจ้งเตือนฐานลูกค้าขนาดใหญ่ภายใน 2 นาทีได้อย่างไร
เราไม่รองรับกรณีการใช้งานนี้ คุณต้องกระจายการเข้าชมในช่วง 5 นาที
แอปของฉันจะแจ้งเตือนผู้ใช้เกี่ยวกับกิจกรรมต่างๆ และต้องส่งข้อความเหล่านี้ทันทีเพื่อรองรับรูปแบบธุรกิจของฉัน ฉันขอโควต้าเพิ่มเติมได้ไหม
ขออภัย เราไม่สามารถเพิ่มโควต้าให้ได้ด้วยเหตุผลนี้ คุณต้องกระจาย
การเข้าชมในช่วง 5 นาทีเพื่อหลีกเลี่ยงการเข้าชมที่เพิ่มขึ้นอย่างรวดเร็ว
ข้อความของฉันเกี่ยวกับ
กิจกรรมที่กำหนดเวลาไว้ ฉันจะส่งการเข้าชมทั้งหมดในช่วงต้นชั่วโมงได้อย่างไร
เราขอแนะนำให้คุณเริ่มส่งการแจ้งเตือนอย่างน้อย 5 นาทีก่อน
กิจกรรม หรือจะส่งข้อความข้อมูล
และใช้ตัวแฮนเดิล onMessageReceived ที่คล้ายกันของแพลตฟอร์มเพื่อกำหนดเวลา
การแจ้งเตือนในเครื่องล่วงหน้าก็ได้
ข้อผิดพลาด 429 เป็นปัญหาที่ฉันและธุรกิจของฉันจัดการได้ยาก ฉันจะได้รับการยกเว้นหรือโควต้าเพิ่มเติมเพื่อหลีกเลี่ยง
การตอบกลับด้วยรหัส 429 ได้ไหม
แม้เราจะทราบดีว่าโควต้าอาจเป็นเรื่องท้าทาย แต่โควต้าก็มีความสำคัญอย่างยิ่งต่อการรักษาความน่าเชื่อถือของบริการ และเราไม่สามารถให้ข้อยกเว้นได้ ใช้การลองใหม่เพื่อจัดการข้อผิดพลาด 429 อย่างเหมาะสม
คำขอเพิ่มโควต้าของฉันจะใช้เวลานานเท่าใดจึงจะดำเนินการเสร็จสมบูรณ์
คำขอเพิ่มโควต้าขึ้นอยู่กับการใช้ FCM ของคุณ ไม่ว่าในกรณีใด คุณจะได้รับคำตอบภายใน 2-3 วันทำการ
ในบางกรณี อาจมีการโต้ตอบไปมาเกี่ยวกับการใช้งาน
FCMและสถานการณ์ต่างๆ ซึ่งอาจทำให้กระบวนการนานขึ้น หากมีคุณสมบัติตรงตามข้อกำหนดทั้งหมด คำขอส่วนใหญ่จะได้รับการจัดการภายใน 2 สัปดาห์
ฉันขอโควต้าเพิ่มเติมสำหรับกิจกรรมชั่วคราวได้ไหม
คุณขอโควต้าเพิ่มเติมเพื่อรองรับกิจกรรมที่ใช้เวลาสูงสุด 1 เดือนได้
โปรดยื่นคำขออย่างน้อย 1 เดือนก่อนวันจัดกิจกรรม พร้อมระบุรายละเอียดที่ชัดเจนเกี่ยวกับเวลาเริ่มและสิ้นสุดของกิจกรรม และFCM จะพยายามอย่างเต็มที่เพื่อดำเนินการตามคำขอ หากได้รับอนุมัติ ระบบจะยกเลิกการเพิ่มโควต้าเหล่านี้
หลังจากวันที่สิ้นสุดของกิจกรรม
โควต้าปัจจุบันของฉันอาจมีการเปลี่ยนแปลงไหม
แม้ว่า Google จะไม่เปลี่ยนแปลงโควต้าโดยง่าย แต่ก็อาจเปลี่ยนแปลงได้ตามความจำเป็นเพื่อปกป้อง
ความสมบูรณ์ของระบบ Google จะแจ้งให้คุณทราบล่วงหน้าเกี่ยวกับการเปลี่ยนแปลงดังกล่าวเมื่อเป็นไปได้
โปรดอัปเดตผู้ติดต่อใน MSA ของ Cloud เพื่อเพิ่มโอกาสในการรับประกาศเกี่ยวกับบริการ
FCM การเลิกใช้งาน API เดิม
เลิกใช้งาน API ฝั่งเซิร์ฟเวอร์ในเดือนกันยายน 2026
API และฟีเจอร์ใดบ้างที่เลิกใช้งานแล้วและจะหยุดให้บริการ ฉันควรทำอย่างไรหากใช้ API เหล่านี้
InstanceId Server API ทั้งหมด
และฟีเจอร์กลุ่มอุปกรณ์
จะเลิกใช้งานและจะปิดให้บริการในวันที่ 29 กันยายน 2027 ตารางต่อไปนี้
แสดงรายละเอียดเพิ่มเติมเกี่ยวกับ API/ฟีเจอร์ที่เลิกใช้งานแล้วและการดำเนินการที่จำเป็น
| ชื่อ API
|
ปลายทาง API
|
วัตถุประสงค์การใช้งาน
|
ผลกระทบต่อลูกค้า
|
การดำเนินการที่จำเป็น
|
| InstanceId info API
|
https://iid.googleapis.com/iid/info
|
การรับข้อมูลที่เกี่ยวข้องกับ InstanceId / โทเค็น FCM
|
คำขอไปยัง API นี้จะเริ่มล้มเหลวหลังจากวันที่ 29 กันยายน 2027
|
สำหรับลูกค้าที่ใช้ API เพื่อตรวจสอบโทเค็น ให้ใช้ FCM V1 send API และตั้งค่า validate_only เป็น true
สำหรับลูกค้าที่ใช้ API เพื่อรับข้อมูลการติดตามหัวข้อ ให้ย้ายข้อมูลไปยังการติดตามหัวข้อ API ใหม่
|
| API การสมัครใช้หัวข้อ InstanceId
|
https://iid.googleapis.com/iid/v1/…/rel/topics
https://iid.googleapis.com/iid/v1:batchAdd
https://iid.googleapis.com/iid/v1:batchRemove
|
การสมัครใช้โทเค็นในหัวข้อผ่าน API การสมัครใช้หัวข้อเดิม
|
คำขอไปยัง API เหล่านี้จะเริ่มล้มเหลวหลังจากวันที่ 29 กันยายน 2027
|
ย้ายข้อมูลไปยังเซิร์ฟเวอร์การสมัครรับหัวข้อใหม่FCM
API
สำหรับการสมัครรับและยกเลิกการสมัครรับหัวข้อ
|
| InstanceId batch import API
|
https://iid.googleapis.com/iid/v1:batchImport
|
การสร้างโทเค็น FCM สำหรับ iOS เป็นกลุ่มในฝั่งเซิร์ฟเวอร์
|
คำขอไปยัง API นี้จะเริ่มล้มเหลวหลังจากวันที่ 29 กันยายน 2027
ระบบจะไม่รองรับการสร้างการลงทะเบียน FCM จากโทเค็น APNs ในฝั่งเซิร์ฟเวอร์
|
คุณสามารถใช้บริการ APNs ของ Apple เพื่อส่งการแจ้งเตือนโดยใช้โทเค็น APNs
หากต้องการรับสิทธิประโยชน์เพิ่มเติมจาก FCM ให้ผสานรวมแอปกับ FCM iOS SDK ซึ่งจะสร้างการลงทะเบียน FCM ในไคลเอ็นต์
|
| API การจัดการกลุ่มอุปกรณ์
|
https://fcm.googleapis.com/fcm/notification
https://fcm.googleapis.com/gcm/notification
https://fcm.googleapis.com/iid/notification
https://fcm.googleapis.com/notification
|
การเพิ่ม / นำออก/ ดึงข้อมูลสมาชิกกลุ่มอุปกรณ์
|
คำขอไปยัง API นี้จะเริ่มล้มเหลวหลังจากวันที่ 29 กันยายน 2027
|
ดูคำแนะนำในการย้ายข้อมูลออกจากฟีเจอร์
และระบบจะยังคงส่งข้อความไปยังการลงทะเบียน FCM แต่ละรายการแทนโทเค็นกลุ่มได้
|
| ส่งไปยังกลุ่มอุปกรณ์
|
https://fcm.googleapis.com/v1/projects/…/messages:send
|
การส่งข้อความไปยังกลุ่มอุปกรณ์โดยใช้ notification_key ของกลุ่ม
|
API นี้จะยังคงทำงานต่อไป แต่จะไม่รองรับโทเค็นกลุ่มอุปกรณ์หลังจากวันที่ 29 กันยายน 2027
|
หากฉันใช้ Firebase Admin SDK เพื่อจัดการการติดตามหัวข้อ ฉันจะได้รับผลกระทบจากการเลิกใช้งานไหม ควรทำอย่างไร
หากคุณใช้ Firebase Admin SDK เวอร์ชันก่อนหน้าเพื่อจัดการการติดตามหัวข้อ การเลิกใช้งานนี้จะส่งผลต่อคุณ
คุณจะต้องอัปเกรด Firebase Admin SDK เป็นเวอร์ชันต่อไปนี้
| แพลตฟอร์ม
|
เวอร์ชัน Admin SDK ที่ได้รับผลกระทบ
|
เวอร์ชัน Admin SDK ที่จะอัปเกรด
|
| Node.js
|
<=14.4.0
|
>=14.5.0
|
| Python
|
<=7.6.0
|
>=7.7.0
|
| Java
|
<=9.10.0
|
เร็วๆ นี้
|
| Go
|
<=4.21.0
|
>=4.22.0
|
| .NET
|
<=3.6.0
|
เร็วๆ นี้
|
ฉันจะเห็นการลดรุ่นบริการก่อนวันที่ 29 กันยายน 2027 ไหม
ไม่ คุณมีเวลา 12 เดือนในการย้ายข้อมูลจาก API ที่เลิกใช้งานแล้วไปยัง API ทางเลือกโดยไม่มีการดาวน์เกรดบริการ เราขอแนะนำอย่างยิ่งให้คุณวางแผนการย้ายข้อมูลโดยเร็วที่สุดเพื่อไม่ให้ได้รับผลกระทบจากการเลิกใช้งาน
คุณจะได้รับข้อผิดพลาดเมื่อเรียกใช้ API ที่เลิกใช้งานแล้วหลังจากวันที่ 29 กันยายน 2027
ผู้ใช้ใหม่จะเริ่มต้นใช้งาน API/ฟีเจอร์ที่เลิกใช้งานแล้วก่อนที่จะหยุดให้บริการได้ไหม
ผู้ใช้ใหม่สามารถเริ่มต้นใช้งาน API/ฟีเจอร์ที่เลิกใช้งานแล้วได้ก่อนวันที่ 1 มกราคม 2027
หลังจากวันที่ 1 มกราคม 2027 ผู้ใช้ใหม่จะใช้ API ที่เลิกใช้งานแล้วไม่ได้
ผู้ใช้ที่ใช้ API ที่เลิกใช้งานแล้วจะยังใช้ API เหล่านั้นต่อไปได้จนถึงวันที่ 29 กันยายน 2027