การรับส่งข้อความในแอปของ Firebase มีชุดลักษณะการทำงานและประเภทข้อความที่กำหนดค่าไว้ล่วงหน้าที่เป็นประโยชน์ซึ่งมีรูปลักษณ์เริ่มต้น แต่ในบางกรณีคุณอาจต้องการขยายลักษณะการทำงานและเนื้อหาข้อความ การรับส่งข้อความในแอปช่วยให้คุณสามารถเพิ่มการดำเนินการ ในข้อความและปรับแต่งรูปลักษณ์ของข้อความได้
เพิ่มการดำเนินการลงในข้อความ
คุณสามารถใช้ข้อความในแอปเพื่อนำผู้ใช้ไปยังเว็บไซต์หรือหน้าจอที่ต้องการในแอป
ใช้เครื่องจัดการ Deep Link
การรับส่งข้อความในแอปของ Firebase ใช้เครื่องจัดการลิงก์ในการประมวลผลการดำเนินการ SDK นี้ใช้ตัวแฮนเดิลได้จํานวนหนึ่ง ดังนั้นหากแอปของคุณมีตัวแฮนเดิลอยู่แล้ว การรับส่งข้อความในแอปของ Firebase จะใช้ตัวแฮนเดิลนั้นได้โดยไม่ต้องตั้งค่าเพิ่มเติม หากยังไม่มีเครื่องจัดการ ให้ใช้ลิงก์แบบไดนามิกของ Firebase ดูข้อมูลเพิ่มเติมได้ที่สร้างลิงก์แบบไดนามิกบน iOS
เพิ่มการดำเนินการลงในข้อความโดยใช้คอนโซล Firebase
เมื่อแอปมีเครื่องจัดการลิงก์ คุณก็พร้อมที่จะสร้างแคมเปญด้วยการดำเนินการแล้ว เปิดคอนโซล Firebase ไปที่ การรับส่งข้อความ แล้วเริ่มแคมเปญใหม่หรือแก้ไขแคมเปญที่มีอยู่ ในแคมเปญนั้น ให้ระบุการ์ด ข้อความบนปุ่ม และการทำงานของปุ่ม การทำงานของรูปภาพ หรือการดำเนินการกับแบนเนอร์ ซึ่งการทำงานคือ Deep Link ที่เกี่ยวข้อง
รูปแบบของการดำเนินการจะขึ้นอยู่กับเลย์เอาต์ข้อความที่เลือก โมดัลมีปุ่มการทำงานที่มาพร้อมกับเนื้อหาข้อความบนปุ่มที่ปรับแต่งได้ สีข้อความ และสีพื้นหลัง ในทางกลับกัน รูปภาพและแบนเนอร์ด้านบนจะโต้ตอบได้และเรียกใช้การดำเนินการที่ระบุเมื่อแตะ
แก้ไขรูปลักษณ์ของข้อความ
การรับส่งข้อความในแอปของ Firebase ช่วยให้คุณปรับแต่งการแสดงข้อความเพื่อเปลี่ยนวิธีที่แอปแสดงเลย์เอาต์ รูปแบบแบบอักษร รูปร่างของปุ่ม และรายละเอียดอื่นๆ ได้ วิธีแก้ไขการแสดงข้อความมี 2 วิธี ได้แก่ แก้ไขการแสดงการรับส่งข้อความในแอปของ Firebase ที่เป็นค่าเริ่มต้น หรือสร้างไลบรารีการแสดงข้อความของคุณเองตั้งแต่ต้น
แก้ไขการแสดงผลเริ่มต้น
วิธีที่ง่ายที่สุดในการปรับแต่งข้อความคือการสร้างจากโค้ดแสดงข้อความเริ่มต้นของการรับส่งข้อความในแอป Firebase
โคลนที่เก็บ firebase-ios-sdk
หากต้องการเริ่มต้นใช้งาน ให้โคลนที่เก็บ firebase-ios-sdk
รุ่นล่าสุด แล้วเปิดไดเรกทอรี InAppMessaging
เลือกประเภทข้อความที่จะแก้ไข
เมื่อโคลนที่เก็บแล้ว คุณจะแก้ไขประเภทข้อความในการรับส่งข้อความในแอปของ Firebase ได้ ไม่ว่าจะเป็น Card
, Modal
, Banner
และ ImageOnly
ซึ่งแต่ละประเภทจะสอดคล้องกับเลย์เอาต์ข้อความในขั้นตอนการสร้างแคมเปญการรับส่งข้อความในแอปของ Firebase
ด้วยเหตุนี้ แต่ละประเภทจึงมีสิทธิ์เข้าถึงชุดข้อมูลที่ต่างกัน ซึ่งขึ้นอยู่กับตัวเลือกการปรับแต่งแคมเปญในคอนโซล Firebase ดังนี้
ประเภท | ข้อความชื่อ | ข้อความเนื้อหา | สีข้อความ | สีพื้นหลัง | ข้อมูลรูปภาพ | ปุ่มดำเนินการ | ปุ่มการทำงานรอง |
---|---|---|---|---|---|---|---|
การ์ด | |||||||
โมดัล | |||||||
แบนเนอร์ | |||||||
รูปภาพเท่านั้น |
แก้ไขโค้ดการแสดงผลข้อความ
อย่างไรก็ตาม คุณสามารถแก้ไขข้อจำกัดประเภทข้อความได้ตามต้องการ คุณสามารถสร้างแบนเนอร์ที่แสดงที่ด้านล่างของแอป ย้ายปุ่มการทำงานในโมดัล ฝังข้อความในแอปไว้ในฟีดของผู้ใช้ หรือการปรับเปลี่ยนอื่นๆ ที่จะทำให้ข้อความมีรูปลักษณ์เหมาะกับแอปของคุณ
เมื่อแก้ไขข้อความที่แสดง มีสิ่งสำคัญ 2 ประการดังนี้
- ไดเรกทอรีประเภทข้อความ: ข้อความแต่ละประเภทจะมีไดเรกทอรีแยกต่างหากซึ่งมีไฟล์ที่กำหนดตรรกะของประเภทข้อความนั้นๆ ดังนี้
- สตอรีบอร์ด: ไลบรารี
InAppMessaging
ยังมีไฟล์.storyboard
ที่ช่วยกำหนด UI สำหรับข้อความทั้ง 3 ประเภท ดังนี้
แก้ไขไฟล์ในไดเรกทอรีของประเภทข้อความที่ต้องการและส่วนที่เกี่ยวข้องของ .storyboard
เพื่อสร้างการแสดงข้อความที่กำหนดเอง
อัปเดต Podfile เพื่อใช้โค้ด InAppMessaging
ที่แก้ไขแล้ว
หากต้องการให้การรับส่งข้อความในแอปของ Firebase ใช้การแสดงข้อความที่แก้ไขแทนจอแสดงผลเริ่มต้น ให้อัปเดต Podfile ให้ใช้ไลบรารี InAppMessaging
ที่ปรับแต่งแล้วดังนี้
# Uncomment the next line to define a global platform for your project # platform :ios, '9.0' target 'YourProject' do # Comment the next line if you're not using Swift and don't want to use dynamic frameworks use_frameworks! # Pods for YourProject pod 'Firebase' # Remove the default InAppMessaging pod: # pod 'Firebase/InAppMessaging' # Overwrite it with a version that points to your local copy: pod `FirebaseInAppMessaging', :path => '~/Path/To/The/Cloned/Repo/' end
สร้างไลบรารีการแสดงข้อความของคุณเอง
คุณไม่จำกัดการทำงานจากไลบรารี InAppMessaging
เพื่อสร้าง UI สำหรับแสดงข้อความ หรือคุณจะเขียนโค้ดเองตั้งแต่ต้นก็ได้
สร้างคลาสที่ใช้โปรโตคอล InAppMessagingDisplay
การรับส่งข้อความในแอปของ Firebase ใช้คลาส InAppMessaging
เพื่อจัดการการสื่อสารระหว่างเซิร์ฟเวอร์ Firebase กับแอปของคุณ ซึ่งหมายความว่าคลาสดังกล่าวจะใช้โปรโตคอล InAppMessagingDisplay
เพื่อแสดงข้อความที่ได้รับ
หากต้องการสร้างไลบรารีการแสดงผลของคุณเอง ให้เขียนคลาสที่ใช้โปรโตคอลดังกล่าว
ดูคำจำกัดความและเอกสารประกอบเกี่ยวกับโปรโตคอลของโปรโตคอลไว้ในไฟล์ FIRInAppMessagingDisplay.h
ของไลบรารี InAppMessaging
ตั้งค่าให้ messageDisplayComponent
ใช้ไลบรารีการแสดงข้อความ
InAppMessaging
ใช้พร็อพเพอร์ตี้ messageDisplayComponent
เพื่อกำหนดออบเจ็กต์ที่จะใช้เมื่อแสดงข้อความ ตั้งค่าพร็อพเพอร์ตี้นั้นเป็นออบเจ็กต์ของคลาสการแสดงข้อความที่กำหนดเอง เพื่อให้การรับส่งข้อความในแอปของ Firebase รู้ว่าต้องใช้ไลบรารีในการแสดงผลข้อความด้วย
InAppMessaging.inAppMessaging().messageDisplayComponent = yourInAppMessagingRenderingInstance