ปรับแต่งข้อความ Firebase In-App Messaging


การรับส่งข้อความในแอปของ Firebase มีชุดลักษณะการทำงานและประเภทข้อความที่กำหนดค่าไว้ล่วงหน้าที่เป็นประโยชน์ซึ่งมีรูปลักษณ์เริ่มต้น แต่ในบางกรณีคุณอาจต้องการขยายลักษณะการทำงานและเนื้อหาข้อความ การรับส่งข้อความในแอปช่วยให้คุณเพิ่มการดำเนินการในข้อความและปรับแต่งรูปลักษณ์ของข้อความได้

เพิ่มการดำเนินการลงในข้อความ

เมื่อใช้การดําเนินการ คุณจะสามารถใช้ข้อความในแอปเพื่อนําผู้ใช้ไปยังเว็บไซต์หรือหน้าจอที่เฉพาะเจาะจงในแอปได้

Firebase In-App Messaging ใช้ตัวแฮนเดิลลิงก์เพื่อประมวลผลการดำเนินการ SDK ใช้ตัวแฮนเดิลได้หลายรายการ ดังนั้นหากแอปของคุณมีแฮนเดิลอยู่แล้ว Firebase In-App Messagingจะใช้แฮนเดิลนั้นได้โดยที่ไม่ต้องตั้งค่าเพิ่มเติม หากยังไม่มีตัวแฮนเดิล คุณสามารถใช้ Firebase Dynamic Links อ่านข้อมูลเพิ่มเติมได้ในบทความสร้างลิงก์แบบไดนามิกใน iOS

เพิ่มการดำเนินการลงในข้อความโดยใช้คอนโซล Firebase

เมื่อแอปมีตัวแฮนเดิลลิงก์แล้ว คุณก็พร้อมที่จะเขียนแคมเปญที่มีการดำเนินการ เปิดFirebaseคอนโซลเพื่อไปที่การรับส่งข้อความ แล้วเริ่มแคมเปญใหม่หรือแก้ไขแคมเปญที่มีอยู่ ในแคมเปญนั้น ให้ระบุการ์ด ข้อความบนปุ่ม และการดําเนินการบนปุ่ม การดําเนินการบนรูปภาพ หรือการดําเนินการบนแบนเนอร์ โดยที่การดําเนินการนั้นเป็น Deep Link ที่เกี่ยวข้อง

รูปแบบของการดําเนินการจะขึ้นอยู่กับเลย์เอาต์ข้อความที่คุณเลือก โมดัลจะมีปุ่มดำเนินการที่มีเนื้อหาข้อความปุ่ม สีข้อความ และสีพื้นหลังที่ปรับแต่งได้ ในทางกลับกัน รูปภาพและแบนเนอร์ด้านบนจะโต้ตอบได้และเรียกใช้การดำเนินการที่ระบุเมื่อแตะ

แก้ไขรูปลักษณ์ของข้อความ

Firebase In-App Messaging ช่วยให้คุณปรับแต่งการแสดงข้อความเพื่อเปลี่ยนวิธีที่แอปแสดงผลเลย์เอาต์ สไตล์แบบอักษร รูปร่างปุ่ม และรายละเอียดอื่นๆ ของข้อความได้ วิธีแก้ไขการแสดงข้อความมี 2 วิธี ได้แก่ แก้ไขการแสดงผล Firebase In-App Messaging เริ่มต้น หรือสร้างคลังแสดงข้อความของคุณเองตั้งแต่ต้น

หมายเหตุ: ผลิตภัณฑ์นี้ไม่พร้อมใช้งานในเป้าหมาย macOS, Mac Catalyst, App Clip หรือ watchOS

แก้ไขการแสดงผลเริ่มต้น

วิธีที่ง่ายที่สุดในการปรับแต่งข้อความคือการสร้างจากรหัสแสดงข้อความเริ่มต้นของ Firebase In-App Messaging

โคลนที่เก็บ firebase-ios-sdk

หากต้องการเริ่มต้นใช้งาน ให้โคลนที่เก็บ firebase-ios-sdk รุ่นล่าสุด แล้วเปิดไดเรกทอรี InAppMessaging

เลือกประเภทข้อความที่จะแก้ไข

เมื่อโคลนที่เก็บแล้ว คุณจะแก้ไขข้อความ Firebase In-App Messaging บางประเภทหรือทั้งหมดได้ ซึ่งได้แก่ Card Modal Banner และ ImageOnly แต่ละประเภทจะสอดคล้องกับเลย์เอาต์ข้อความในFirebase In-App Messagingขั้นตอนการสร้างแคมเปญ

ด้วยเหตุนี้ ผู้ใช้แต่ละประเภทจึงมีสิทธิ์เข้าถึงชุดข้อมูลที่แตกต่างกัน โดยขึ้นอยู่กับตัวเลือกการปรับแต่งแคมเปญในคอนโซล Firebase

ประเภท ข้อความชื่อ bodyText textColor สีพื้นหลัง ข้อมูลรูปภาพ actionButton secondaryActionButton
การ์ด
โมดัล
แบนเนอร์
ImageOnly

แก้ไขโค้ดการแสดงผลข้อความ

คุณสามารถแก้ไขข้อความได้ตามต้องการโดยคำนึงถึงข้อจำกัดของประเภทข้อความ คุณสามารถสร้างแบนเนอร์ที่แสดงที่ด้านล่างของแอป ย้ายปุ่มการทำงานในโมดัล ฝังข้อความในแอปลงในฟีดของผู้ใช้ หรือการปรับเปลี่ยนอื่นๆ ที่จะทำให้ข้อความมีรูปลักษณ์เหมาะกับแอปของคุณ

สิ่งที่ควรคำนึงถึงหลักๆ 2 อย่างเมื่อแก้ไขการแสดงข้อความมีดังนี้

  • ไดเรกทอรีประเภทข้อความ: ข้อความแต่ละประเภทจะมีไดเรกทอรีแยกต่างหากซึ่งมีไฟล์ที่กําหนดตรรกะของประเภทนั้นๆ ดังนี้
  • สตอรี่บอร์ด: ไลบรารี InAppMessaging ยังมีไฟล์ .storyboard ที่จะช่วยกำหนด UI สำหรับข้อความทั้ง 3 ประเภท ดังนี้

แก้ไขไฟล์ในไดเรกทอรีของประเภทข้อความที่ต้องการและส่วนที่เกี่ยวข้องของ .storyboard เพื่อสร้างการแสดงข้อความที่กำหนดเอง

อัปเดต podfile เพื่อใช้โค้ด InAppMessaging ที่แก้ไขแล้ว

หากต้องการให้ Firebase In-App Messaging ใช้การแสดงข้อความที่แก้ไขแทนการแสดงเริ่มต้น ให้อัปเดต 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
เมื่อทำเสร็จแล้ว คุณจะอัปเดตพ็อด สร้างแอปอีกครั้ง และดูข้อความที่ปรับแต่งแล้วใหม่ได้

สร้างคลังการแสดงข้อความของคุณเอง

คุณไม่จำเป็นต้องสร้าง UI สำหรับแสดงข้อความจากคลัง InAppMessaging เท่านั้น หรือคุณจะเขียนโค้ดเองตั้งแต่ต้นก็ได้

สร้างคลาสที่ใช้โปรโตคอล InAppMessagingDisplay

Firebase In-App Messaging ใช้คลาส InAppMessaging เพื่อจัดการการสื่อสารระหว่างเซิร์ฟเวอร์ Firebase กับแอปของคุณ ซึ่งคลาสดังกล่าวจะใช้โปรโตคอล InAppMessagingDisplay เพื่อแสดงข้อความที่ได้รับ หากต้องการสร้างไลบรารีการแสดงผลของคุณเอง ให้เขียนคลาสที่ใช้โปรโตคอล

คําจํากัดความของโปรโตคอลและเอกสารประกอบเกี่ยวกับวิธีปฏิบัติตามโปรโตคอลอยู่ในไฟล์ FIRInAppMessagingDisplay.h ของไลบรารี InAppMessaging

ตั้งค่าให้ messageDisplayComponent ใช้ไลบรารีการแสดงข้อความ

InAppMessaging ใช้พร็อพเพอร์ตี้ messageDisplayComponent เพื่อกำหนดออบเจ็กต์ที่จะใช้เมื่อแสดงข้อความ ตั้งค่าพร็อพเพอร์ตี้นั้นให้เป็นออบเจ็กต์ของคลาสการแสดงข้อความที่กําหนดเองเพื่อให้ Firebase In-App Messaging รู้ว่าต้องใช้ไลบรารีของคุณเพื่อแสดงผลข้อความ

InAppMessaging.inAppMessaging().messageDisplayComponent = yourInAppMessagingRenderingInstance