ปรับแต่งข้อความ 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

ประเภท titleText bodyText textColor backgroundColor imageData 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
เมื่อดำเนินการเสร็จแล้ว คุณจะอัปเดตพ็อด Rebuild แอป และดูข้อความที่ปรับแต่งใหม่ได้

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

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

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

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

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

ตั้งค่า messageDisplayComponent เพื่อใช้คลังการแสดงข้อความ

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

InAppMessaging.inAppMessaging().messageDisplayComponent = yourInAppMessagingRenderingInstance