หากต้องการเขียนแอปไคลเอ็นต์ข้ามแพลตฟอร์ม Firebase Cloud Messagingด้วย Unity ให้ใช้ Firebase Cloud Messaging API Unity SDK ใช้ได้ทั้งใน Android และ Apple โดยต้องมีการตั้งค่าเพิ่มเติม สำหรับแต่ละแพลตฟอร์ม
ก่อนเริ่มต้น
ข้อกำหนดเบื้องต้น
ติดตั้ง Unity 2021 LTS ขึ้นไป เราถือว่าการรองรับ Unity 2020 เป็นเวอร์ชันที่เลิกใช้งานแล้ว และจะไม่รองรับอย่างจริงจังอีกต่อไปหลังจาก การเปิดตัวเวอร์ชันหลักครั้งถัดไป เวอร์ชันก่อนหน้าอาจใช้งานร่วมกันได้ แต่จะไม่ได้รับการสนับสนุนอย่างเต็มที่
(แพลตฟอร์ม Apple เท่านั้น) ติดตั้งสิ่งต่อไปนี้
- Xcode 13.3.1 ขึ้นไป
- CocoaPods 1.12.0 ขึ้นไป
ตรวจสอบว่าโปรเจ็กต์ Unity เป็นไปตามข้อกำหนดต่อไปนี้
- สำหรับ iOS — กำหนดเป้าหมายเป็น iOS 13 ขึ้นไป
- สำหรับ tvOS - กำหนดเป้าหมายเป็น tvOS 13 ขึ้นไป
- สำหรับ Android - กำหนดเป้าหมาย API ระดับ 21 (Lollipop) ขึ้นไป
ตั้งค่าอุปกรณ์หรือใช้โปรแกรมจำลองเพื่อเรียกใช้โปรเจ็กต์ Unity
สำหรับ iOS หรือ tvOS — ตั้งค่าอุปกรณ์จริงเพื่อเรียกใช้แอป และทําตามงานต่อไปนี้
- รับคีย์การตรวจสอบสิทธิ์ข้อความ Push ของ Apple สำหรับบัญชีนักพัฒนาแอปของ Apple
- เปิดใช้ข้อความ Push ใน XCode ในส่วนแอป > ความสามารถ
สำหรับ Android - โปรแกรมจำลองต้องใช้ อิมเมจโปรแกรมจำลองที่มี Google Play
- ลงชื่อเข้าใช้ Firebase ด้วยบัญชี Google
หากยังไม่มีโปรเจ็กต์ Unity และเพียงต้องการลองใช้ผลิตภัณฑ์ Firebase คุณสามารถดาวน์โหลดตัวอย่างการเริ่มต้นใช้งานอย่างรวดเร็วของเราได้
ขั้นตอนที่ 1: สร้างโปรเจ็กต์ Firebase
ก่อนที่จะเพิ่ม Firebase ลงในโปรเจ็กต์ Unity ได้ คุณต้องสร้างโปรเจ็กต์ Firebase เพื่อเชื่อมต่อกับโปรเจ็กต์ Unity ดูข้อมูลเพิ่มเติมเกี่ยวกับโปรเจ็กต์ Firebase ได้ที่ทำความเข้าใจโปรเจ็กต์ Firebase
สร้างโปรเจ็กต์ Firebase
-
ในFirebase คอนโซล ให้คลิกเพิ่มโปรเจ็กต์
-
หากต้องการเพิ่มทรัพยากร Firebase ลงในโปรเจ็กต์ที่มีอยู่ Google Cloud ให้ป้อนชื่อโปรเจ็กต์หรือเลือกจากเมนูแบบเลื่อนลง
-
หากต้องการสร้างโปรเจ็กต์ใหม่ ให้ป้อนชื่อโปรเจ็กต์ นอกจากนี้ คุณยัง เลือกแก้ไขรหัสโปรเจ็กต์ที่แสดงใต้ชื่อโปรเจ็กต์ได้ด้วย
-
-
หากได้รับแจ้ง ให้อ่านและยอมรับข้อกำหนดของ Firebase
-
คลิกต่อไป
-
(ไม่บังคับ) ตั้งค่า Google Analytics สำหรับโปรเจ็กต์ ซึ่งจะ ช่วยให้ได้รับประสบการณ์การใช้งานที่ดียิ่งขึ้นเมื่อใช้ผลิตภัณฑ์ Firebase ต่อไปนี้ Firebase A/B Testing Cloud Messaging Crashlytics In-App Messaging และ Remote Config (รวมถึงการปรับเปลี่ยนในแบบของคุณ)
เลือกบัญชี Google Analytics ที่มีอยู่ หรือสร้างบัญชีใหม่ หากสร้างบัญชีใหม่ ให้เลือกAnalyticsสถานที่ตั้งการรายงาน จากนั้นยอมรับการตั้งค่าการแชร์ข้อมูลและGoogle Analyticsข้อกำหนดสำหรับ โปรเจ็กต์
-
คลิกสร้างโปรเจ็กต์ (หรือเพิ่ม Firebase หากคุณเพิ่ม Firebase ไปยังโปรเจ็กต์ Google Cloud ที่มีอยู่)
Firebase จะจัดสรรทรัพยากรสำหรับโปรเจ็กต์ Firebase โดยอัตโนมัติ เมื่อ กระบวนการเสร็จสมบูรณ์ ระบบจะนำคุณไปยังหน้าภาพรวมของโปรเจ็กต์ Firebase ในFirebaseคอนโซล
ขั้นตอนที่ 2: ลงทะเบียนแอปกับ Firebase
คุณลงทะเบียนแอปหรือเกมอย่างน้อย 1 รายการเพื่อเชื่อมต่อกับโปรเจ็กต์ Firebase ได้
ไปที่คอนโซล Firebase
ที่กึ่งกลางหน้าภาพรวมโปรเจ็กต์ ให้คลิกไอคอน Unity (
) เพื่อเปิดเวิร์กโฟลว์การตั้งค่าหากเพิ่มแอปไปยังโปรเจ็กต์ Firebase แล้ว ให้คลิกเพิ่มแอป เพื่อแสดงตัวเลือกแพลตฟอร์ม
เลือกเป้าหมายของบิลด์โปรเจ็กต์ Unity ที่ต้องการลงทะเบียน หรือจะเลือกเพื่อลงทะเบียนทั้ง 2 เป้าหมายพร้อมกันเลยก็ได้
ป้อนรหัสเฉพาะแพลตฟอร์มของโปรเจ็กต์ Unity
สำหรับ iOS - ป้อนรหัส iOS ของโปรเจ็กต์ Unity ในช่องรหัสชุด iOS
สำหรับ Android - ป้อนรหัส Android ของโปรเจ็กต์ Unity ในช่องชื่อแพ็กเกจ Android
คำว่าชื่อแพ็กเกจและรหัสแอปพลิเคชันมักใช้แทนกันได้
คุณจะดูรหัสโปรเจ็กต์ Unity ได้จากที่ไหน
เปิดโปรเจ็กต์ Unity ใน Unity IDE จากนั้นไปที่ส่วนการตั้งค่า สำหรับแต่ละแพลตฟอร์ม
สำหรับ iOS — ไปที่การตั้งค่าบิลด์ > iOS
สำหรับ Android — ไปที่ Android > การตั้งค่าเพลเยอร์ > การตั้งค่าอื่นๆ
รหัสโปรเจ็กต์ Unity คือค่าตัวระบุชุด (ตัวอย่างรหัส:
com.yourcompany.yourproject
)(ไม่บังคับ) ป้อนชื่อเล่นเฉพาะแพลตฟอร์มของโปรเจ็กต์ Unity
ชื่อเล่นเหล่านี้เป็นตัวระบุภายในเพื่อความสะดวกและจะปรากฏให้คุณเห็นเท่านั้น ในคอนโซล Firebaseคลิกลงทะเบียนแอป
ขั้นตอนที่ 3: เพิ่มไฟล์การกำหนดค่า Firebase
รับไฟล์กำหนดค่า Firebase สำหรับแพลตฟอร์มที่เฉพาะเจาะจงใน Firebaseเวิร์กโฟลว์การตั้งค่าคอนโซล
สำหรับ iOS — คลิกดาวน์โหลด GoogleService-Info.plist
สำหรับ Android - คลิกดาวน์โหลด google-services.json
คุณควรรู้อะไรบ้างเกี่ยวกับไฟล์การกำหนดค่านี้
ไฟล์การกำหนดค่า Firebase จะมีตัวระบุที่ไม่ซ้ำกันและไม่เป็นความลับสำหรับ โปรเจ็กต์และแอปของคุณ หากต้องการดูข้อมูลเพิ่มเติมเกี่ยวกับไฟล์การกำหนดค่านี้ โปรดไปที่ทำความเข้าใจโปรเจ็กต์ Firebase
คุณดาวน์โหลดไฟล์กำหนดค่า Firebase อีกครั้งได้ทุกเมื่อ
โปรดตรวจสอบว่าชื่อไฟล์การกำหนดค่าไม่มีอักขระต่อท้ายเพิ่มเติม เช่น
(2)
เปิดหน้าต่างโปรเจ็กต์ของโปรเจ็กต์ Unity จากนั้นย้ายไฟล์การกำหนดค่า ไปยังโฟลเดอร์
Assets
กลับไปที่คอนโซล Firebase ในเวิร์กโฟลว์การตั้งค่า ให้คลิกถัดไป
ขั้นตอนที่ 4: เพิ่ม Firebase Unity SDK
ในคอนโซล Firebase ให้คลิกดาวน์โหลด Firebase Unity SDK แล้วแตกไฟล์ SDK ในตำแหน่งที่สะดวก
คุณสามารถดาวน์โหลด Firebase Unity SDK อีกครั้งได้ทุกเมื่อ
Firebase Unity SDK ไม่ได้เจาะจงแพลตฟอร์ม
ในโปรเจ็กต์ Unity แบบเปิด ให้ไปที่ เนื้อหา > นำเข้าแพ็กเกจ > แพ็กเกจที่กำหนดเอง
เลือกผลิตภัณฑ์ Firebase ที่รองรับซึ่งต้องการใช้ในแอปจาก SDK ที่แยกไฟล์แล้ว
เราขอแนะนำให้เปิดใช้ Google Analytics ในโปรเจ็กต์เพื่อให้ได้รับประสบการณ์การใช้งาน Firebase Cloud Messaging ที่ดีที่สุด นอกจากนี้ ในขั้นตอนการตั้งค่า Analytics คุณต้องเพิ่มแพ็กเกจ Firebase สำหรับ Analytics ลงในแอปด้วย
- เพิ่มแพ็กเกจ Firebase สำหรับ Google Analytics:
FirebaseAnalytics.unitypackage
- เพิ่มแพ็กเกจสำหรับ Firebase Cloud Messaging โดยทำดังนี้
FirebaseMessaging.unitypackage
เพิ่มแพ็กเกจสำหรับ Firebase Cloud Messaging โดยทำดังนี้
FirebaseMessaging.unitypackage
- เพิ่มแพ็กเกจ Firebase สำหรับ Google Analytics:
คลิกนำเข้า ในหน้าต่างนำเข้าแพ็กเกจ Unity
กลับไปที่คอนโซล Firebase ในเวิร์กโฟลว์การตั้งค่า ให้คลิกถัดไป
ขั้นตอนที่ 5: ยืนยันข้อกำหนดด้านเวอร์ชันของบริการ Google Play
ผลิตภัณฑ์บางอย่างใน Firebase Unity SDK สำหรับ Android ต้องใช้ Google Play services ดูผลิตภัณฑ์ที่มีทรัพยากร Dependency นี้ Google Play services ต้องเป็นเวอร์ชันล่าสุดก่อนจึงจะใช้ผลิตภัณฑ์เหล่านั้นได้
เพิ่มคำสั่ง using
และโค้ดการเริ่มต้นต่อไปนี้ที่จุดเริ่มต้นของแอปพลิเคชัน
คุณสามารถตรวจสอบและอัปเดต Google Play services เป็นเวอร์ชันที่
จำเป็นได้ (ไม่บังคับ) ก่อนเรียกใช้เมธอดอื่นๆ ใน SDK
using Firebase.Extensions;
Firebase.FirebaseApp.CheckAndFixDependenciesAsync().ContinueWithOnMainThread(task => {
var dependencyStatus = task.Result;
if (dependencyStatus == Firebase.DependencyStatus.Available) {
// Create and hold a reference to your FirebaseApp,
// where app is a Firebase.FirebaseApp property of your application class.
app = Firebase.FirebaseApp.DefaultInstance;
// Set a flag here to indicate whether Firebase is ready to use by your app.
} else {
UnityEngine.Debug.LogError(System.String.Format(
"Could not resolve all Firebase dependencies: {0}", dependencyStatus));
// Firebase Unity SDK is not safe to use here.
}
});
โปรเจ็กต์ Unity ได้รับการลงทะเบียนและกำหนดค่าให้ใช้ Firebase แล้ว
อัปโหลดคีย์การตรวจสอบสิทธิ์ APNs สำหรับการสนับสนุนของ Apple
อัปโหลดคีย์การตรวจสอบสิทธิ์ APNs ไปยัง Firebase หากยังไม่มีคีย์การตรวจสอบสิทธิ์ APNs โปรดสร้างคีย์ใน Apple Developer Member Center
-
ภายในโปรเจ็กต์ในFirebaseคอนโซล ให้เลือกไอคอน รูปเฟือง เลือก การตั้งค่าโปรเจ็กต์ แล้วเลือกแท็บ Cloud Messaging
-
ในคีย์การตรวจสอบสิทธิ์ APNs ภายในการกำหนดค่าแอป iOS ให้คลิกปุ่มอัปโหลด
-
เรียกดูตำแหน่งที่คุณบันทึกคีย์ เลือกคีย์ แล้วคลิกเปิด เพิ่มรหัสคีย์สำหรับคีย์ (มีอยู่ใน ศูนย์สมาชิกนักพัฒนาซอฟต์แวร์ของ Apple) แล้วคลิก อัปโหลด
เปิดใช้ข้อความ Push ในแพลตฟอร์ม Apple
ขั้นตอนที่ 1: เพิ่มเฟรมเวิร์กการแจ้งเตือนผู้ใช้
คลิกโปรเจ็กต์ใน Xcode แล้วเลือกแท็บทั่วไปจากพื้นที่แก้ไข
เลื่อนลงไปที่เฟรมเวิร์กและไลบรารีที่ลิงก์ แล้วคลิกปุ่ม + เพื่อเพิ่มเฟรมเวิร์ก
ในหน้าต่างที่ปรากฏขึ้น ให้เลื่อนไปที่ UserNotifications.framework คลิกรายการนั้น แล้วคลิกเพิ่ม
ขั้นตอนที่ 2: เปิดใช้ข้อความ Push
คลิกโปรเจ็กต์ใน Xcode แล้วเลือกแท็บความสามารถจาก พื้นที่แก้ไข
เปลี่ยนข้อความ Push เป็นเปิด
เลื่อนลงไปที่โหมดเบื้องหลัง แล้วเปลี่ยนเป็นเปิด
เลือกช่องทําเครื่องหมายการแจ้งเตือนจากระยะไกลในส่วนโหมดพื้นหลัง
เริ่มต้น Firebase Cloud Messaging
ระบบจะเริ่มต้นใช้งานไลบรารี Firebase Cloud Message เมื่อเพิ่มตัวแฮนเดิล
สำหรับเหตุการณ์ TokenReceived
หรือ MessageReceived
เมื่อเริ่มต้น ระบบจะขอโทเค็นการลงทะเบียนสำหรับอินสแตนซ์แอปไคลเอ็นต์
แอปจะได้รับโทเค็นพร้อมOnTokenReceived
เหตุการณ์
ซึ่งควรแคชไว้เพื่อใช้ในภายหลัง คุณจะต้องใช้โทเค็นนี้หากต้องการกำหนดเป้าหมายไปยังอุปกรณ์นี้โดยเฉพาะสำหรับข้อความ
นอกจากนี้ คุณจะต้องลงทะเบียนเข้าร่วมกิจกรรม OnMessageReceived
หากต้องการรับข้อความขาเข้า
การตั้งค่าทั้งหมดจะมีลักษณะดังนี้
public void Start() { Firebase.Messaging.FirebaseMessaging.TokenReceived += OnTokenReceived; Firebase.Messaging.FirebaseMessaging.MessageReceived += OnMessageReceived; } public void OnTokenReceived(object sender, Firebase.Messaging.TokenReceivedEventArgs token) { UnityEngine.Debug.Log("Received Registration Token: " + token.Token); } public void OnMessageReceived(object sender, Firebase.Messaging.MessageReceivedEventArgs e) { UnityEngine.Debug.Log("Received a new message from: " + e.Message.From); }
การกำหนดค่ากิจกรรมจุดแรกเข้าของ Android
ใน Android Firebase Cloud Messaging จะมาพร้อมกับจุดแรกเข้าที่กำหนดเอง
ซึ่งเป็นกิจกรรมที่แทนที่ UnityPlayerActivity
เริ่มต้น หากคุณไม่ได้ใช้
จุดแรกเข้าที่กำหนดเอง การแทนที่นี้จะเกิดขึ้นโดยอัตโนมัติและคุณไม่ควร
ต้องดำเนินการใดๆ เพิ่มเติม แอปที่ไม่ได้ใช้จุดแรกเข้าเริ่มต้น
กิจกรรม หรือแอปที่จัดหา Assets/Plugins/AndroidManifest.xml
ของตนเองจะต้องมีการกำหนดค่าเพิ่มเติม
Firebase Cloud Messagingปลั๊กอิน Unity ใน Android มาพร้อมกับไฟล์เพิ่มเติม 2 ไฟล์ ได้แก่
Assets/Plugins/Android/libmessaging_unity_player_activity.jar
มีกิจกรรมชื่อMessagingUnityPlayerActivity
ซึ่งแทนที่UnityPlayerActivity
มาตรฐานAssets/Plugins/Android/AndroidManifest.xml
จะสั่งให้แอปใช้MessagingUnityPlayerActivity
เป็นจุดแรกเข้าของแอป
เราให้ไฟล์เหล่านี้เนื่องจาก UnityPlayerActivity
เริ่มต้นไม่
จัดการonStop
, onRestart
การเปลี่ยนวงจรกิจกรรม หรือใช้onNewIntent
ซึ่งจำเป็นสำหรับ Firebase Cloud Messaging ในการจัดการข้อความขาเข้าอย่างถูกต้อง
การกำหนดค่ากิจกรรมจุดแรกเข้าที่กำหนดเอง
หากแอปไม่ได้ใช้ UnityPlayerActivity
เริ่มต้น คุณจะต้อง
นำ AndroidManifest.xml
ที่ระบุออก และตรวจสอบว่ากิจกรรมที่กำหนดเอง
จัดการการเปลี่ยนสถานะทั้งหมดของ
วงจรการทำงานของ Android Activity
อย่างถูกต้อง (ตัวอย่างวิธีดำเนินการแสดงอยู่ด้านล่าง) หากกิจกรรมที่กำหนดเองขยาย UnityPlayerActivity
คุณสามารถขยาย com.google.firebase.MessagingUnityPlayerActivity
แทนได้ ซึ่งจะใช้เมธอดที่จำเป็นทั้งหมด
หากคุณใช้กิจกรรมที่กำหนดเองและไม่ได้ขยาย
com.google.firebase.MessagingUnityPlayerActivity
คุณควรใส่ข้อมูลโค้ดต่อไปนี้ในกิจกรรม
/** * Workaround for when a message is sent containing both a Data and Notification payload. * * When the app is in the background, if a message with both a data and notification payload is * received the data payload is stored on the Intent passed to onNewIntent. By default, that * intent does not get set as the Intent that started the app, so when the app comes back online * it doesn't see a new FCM message to respond to. As a workaround, we override onNewIntent so * that it sends the intent to the MessageForwardingService which forwards the message to the * FirebaseMessagingService which in turn sends the message to the application. */ @Override protected void onNewIntent(Intent intent) { Intent message = new Intent(this, MessageForwardingService.class); message.setAction(MessageForwardingService.ACTION_REMOTE_INTENT); message.putExtras(intent); message.setData(intent.getData()); // For older versions of Firebase C++ SDK (< 7.1.0), use `startService`. // startService(message); MessageForwardingService.enqueueWork(this, message); } /** * Dispose of the mUnityPlayer when restarting the app. * * This ensures that when the app starts up again it does not start with stale data. */ @Override protected void onCreate(Bundle savedInstanceState) { if (mUnityPlayer != null) { mUnityPlayer.quit(); mUnityPlayer = null; } super.onCreate(savedInstanceState); }
Firebase C++ SDK เวอร์ชันใหม่ (7.1.0 ขึ้นไป) ใช้ JobIntentService
ซึ่งต้องมีการแก้ไขเพิ่มเติมในไฟล์ AndroidManifest.xml
<service android:name="com.google.firebase.messaging.MessageForwardingService" android:permission="android.permission.BIND_JOB_SERVICE" android:exported="true" > </service>
หมายเหตุเกี่ยวกับการส่งข้อความใน Android
เมื่อแอปไม่ได้ทำงานเลยและผู้ใช้แตะการแจ้งเตือน
ระบบจะไม่กำหนดเส้นทางข้อความผ่านแฮนเดิลการเรียกกลับในตัวของ FCM โดยค่าเริ่มต้น
ในกรณีนี้ ระบบจะรับเพย์โหลดของข้อความผ่าน Intent
ที่ใช้เพื่อเริ่มแอปพลิเคชัน
ข้อความที่ได้รับขณะที่แอปทำงานในเบื้องหลังจะมีเนื้อหาของช่องการแจ้งเตือนที่ใช้ในการแสดงการแจ้งเตือนในถาดระบบ แต่ระบบจะไม่สื่อสารเนื้อหาการแจ้งเตือนนั้นกับ FCM กล่าวคือ FirebaseMessage.Notification
จะเป็นค่า Null
บทสรุปมีดังนี้:
สถานะของแอป | การแจ้งเตือน | ข้อมูล | ทั้งสอง |
---|---|---|---|
พื้นหน้า | Firebase.Messaging.FirebaseMessaging.MessageReceived |
Firebase.Messaging.FirebaseMessaging.MessageReceived |
Firebase.Messaging.FirebaseMessaging.MessageReceived |
ข้อมูลเบื้องต้น | ถาดระบบ | Firebase.Messaging.FirebaseMessaging.MessageReceived |
การแจ้งเตือน: ถาดระบบ ข้อมูล: ในส่วนพิเศษของ Intent |
ป้องกันการเริ่มต้นอัตโนมัติ
FCM สร้างโทเค็นการลงทะเบียนสำหรับการกำหนดเป้าหมายอุปกรณ์
เมื่อสร้างโทเค็น ไลบรารีจะอัปโหลดตัวระบุและข้อมูลการกำหนดค่าไปยัง Firebase
หากต้องการรับการเลือกใช้ที่ชัดเจนก่อนใช้โทเค็น คุณสามารถป้องกันการสร้างโทเค็นในเวลาที่กำหนดค่าได้โดยการปิดใช้ FCM (และใน Android ให้ปิดใช้ Analytics) โดยเพิ่มค่าข้อมูลเมตาลงใน
Info.plist
(ไม่ใช่ GoogleService-Info.plist
) ใน Apple หรือ
AndroidManifest.xml
ใน Android ดังนี้
<?xml version="1.0" encoding="utf-8"?> <application> <meta-data android:name="firebase_messaging_auto_init_enabled" android:value="false" /> <meta-data android:name="firebase_analytics_collection_enabled" android:value="false" /> </application>
FirebaseMessagingAutoInitEnabled = NO
หากต้องการเปิดใช้ FCM อีกครั้ง คุณสามารถทำการเรียกใช้รันไทม์ได้โดยทำดังนี้
Firebase.Messaging.FirebaseMessaging.TokenRegistrationOnInitEnabled = true;
ค่านี้จะยังคงอยู่เมื่อรีสตาร์ทแอปเมื่อตั้งค่าแล้ว
การจัดการข้อความที่มี Deep Link ใน Android
FCM อนุญาตให้ส่งข้อความที่มี Deep Link ไปยังแอปของคุณ หากต้องการรับข้อความที่มี Deep Link คุณต้องเพิ่มตัวกรอง Intent ใหม่ ไปยังกิจกรรมที่จัดการ Deep Link สำหรับแอปของคุณ ตัวกรอง Intent ควร จับ Deep Link ของโดเมนของคุณ หากข้อความไม่มี Deep Link ก็ไม่จำเป็นต้องกำหนดค่านี้ ใน AndroidManifest.xml ให้ทำดังนี้
<intent-filter> <action android:name="android.intent.action.VIEW"/> <category android:name="android.intent.category.DEFAULT"/> <category android:name="android.intent.category.BROWSABLE"/> <data android:host="CHANGE_THIS_DOMAIN.example.com" android:scheme="http"/> <data android:host="CHANGE_THIS_DOMAIN.example.com" android:scheme="https"/> </intent-filter>
นอกจากนี้ยังระบุไวลด์การ์ดเพื่อให้ตัวกรอง Intent มีความยืดหยุ่นมากขึ้นได้ด้วย เช่น
<intent-filter> <action android:name="android.intent.action.VIEW"/> <category android:name="android.intent.category.DEFAULT"/> <category android:name="android.intent.category.BROWSABLE"/> <data android:host="*.example.com" android:scheme="http"/> <data android:host="*.example.com" android:scheme="https"/> </intent-filter>
เมื่อผู้ใช้แตะการแจ้งเตือนที่มีลิงก์ไปยังสคีมาและโฮสต์ที่คุณระบุ แอปจะเริ่มกิจกรรมด้วยตัวกรอง Intent นี้เพื่อจัดการลิงก์
ขั้นตอนถัดไป
หลังจากตั้งค่าแอปไคลเอ็นต์แล้ว คุณก็พร้อมที่จะส่งข้อความดาวน์สตรีมและข้อความตามหัวข้อด้วย Firebase ดูข้อมูลเพิ่มเติมได้ที่ตัวอย่างการเริ่มต้นอย่างรวดเร็ว ซึ่งแสดงให้เห็นถึงฟังก์ชันนี้
หากต้องการเพิ่มลักษณะการทำงานอื่นๆ ที่ซับซ้อนมากขึ้นให้กับแอป โปรดดูคำแนะนำสำหรับการส่ง ข้อความจากเซิร์ฟเวอร์ของแอป
โปรดทราบว่าคุณต้องมีการติดตั้งใช้งานฝั่งเซิร์ฟเวอร์จึงจะใช้ฟีเจอร์เหล่านี้ได้