ตอนนี้แอปพลิเคชันที่สแกนหาอุปกรณ์ในเครือข่าย LAN จะแจ้งให้ผู้ใช้ทราบด้วยกล่องโต้ตอบสิทธิ์แบบครั้งเดียวเพื่อค้นหาและเชื่อมต่อกับ อุปกรณ์ในเครือข่าย LAN แพลตฟอร์มแคสต์ใช้เครือข่าย LAN เพื่อค้นหาและควบคุมอุปกรณ์แคสต์ ดังนั้นหากผู้ใช้ปฏิเสธการให้สิทธิ์ ผู้ใช้จะแคสต์ไม่ได้
เราจะปรับเปลี่ยน UX บางอย่างใน SDK สำหรับแอปที่ใช้ตัวเลือกอุปกรณ์มาตรฐานเพื่อปรับปรุงประสบการณ์ของผู้ใช้ การแก้ไข UX เหล่านี้ จะช่วยให้ผู้ใช้ทราบได้ชัดเจนยิ่งขึ้นว่าเหตุใดจึงต้องมีสิทธิ์เข้าถึงเครือข่าย LAN รวมถึงวิธีเปิดใช้การแคสต์หากมีการปิดใช้ การเข้าถึงอุปกรณ์ในเครือข่าย LAN
คุณเพิ่ม Cast iOS SDK เวอร์ชัน 4.6.0 ขึ้นไปได้ด้วย Swift Package Manager โดย ทำตาม การตั้งค่า Swift Package Manager หรือดาวน์โหลดด้วยตนเองโดย ทำตามการตั้งค่าด้วยตนเอง รุ่นนี้ มีการเปลี่ยนแปลงกลไกการค้นหาพื้นฐานเพื่อให้แอปที่สร้างด้วย Xcode 12 ค้นหาอุปกรณ์ Cast ในเครือข่ายได้ ปุ่มแคสต์ควร แสดงอยู่เสมอ หากไม่มีอุปกรณ์พร้อมใช้งานเมื่อผู้ใช้แตะปุ่มแคสต์ กล่องโต้ตอบจะแสดงคำแนะนำเกี่ยวกับสาเหตุที่อุปกรณ์อาจไม่พร้อมใช้งาน รวมถึงข้อมูลเกี่ยวกับวิธีเปิดใช้สิทธิ์เข้าถึงเครือข่าย LAN อีกครั้ง
การเปลี่ยนแปลง Cast SDK
การแคสต์ครั้งแรก
เมื่อผู้ใช้พยายามแคสต์เป็นครั้งแรก กล่องโต้ตอบคั่นหน้าการเข้าถึงเครือข่ายภายใน (LNA) จะปรากฏขึ้นเพื่ออธิบายว่าเหตุใดจึงต้องมีการเข้าถึงเครือข่ายภายใน ตามด้วยข้อความแจ้งสิทธิ์การเข้าถึงเครือข่ายภายในของ iOS ที่ Apple จัดหาให้ ภาพจำลองด้านล่างแสดงขั้นตอนการทำงาน

แคสต์ไม่ได้
ตั้งแต่ Sender SDK 4.6.0 ของ iOS เป็นต้นไป ปุ่มแคสต์จะปรากฏขึ้นเสมอเมื่อผู้ใช้ เชื่อมต่อกับ Wi-Fi เมื่ออุปกรณ์แคสต์ไม่พร้อมใช้งาน การแตะปุ่มแคสต์จะแสดงกล่องโต้ตอบที่ให้คำแนะนำแก่ผู้ใช้ เกี่ยวกับสาเหตุที่เป็นไปได้ที่แคสต์ไม่พร้อมใช้งาน ดังที่แสดงในภาพจำลองด้านล่าง

การอัปเดตแอป
-
เพิ่ม Cast iOS SDK 4.8.6 ลงในโปรเจ็กต์
หากใช้ Swift Package Manager ให้อัปเดตแพ็กเกจ
google-cast-ios-sdkเป็นเวอร์ชัน 4.8.6หรือ ดึง SDK ด้วยตนเอง
-
เพิ่ม
NSBonjourServicesลงในInfo.plistระบุ
NSBonjourServicesในInfo.plistเพื่อ อนุญาตให้การค้นหาเครือข่าย LAN สำเร็จคุณจะต้องเพิ่มทั้ง
_googlecast._tcpและ_<your-app-id>._googlecast._tcpเป็นบริการเพื่อให้การค้นหาอุปกรณ์ ทํางานได้อย่างถูกต้องappID คือ receiverID ซึ่งเป็นรหัสเดียวกันกับที่กำหนดไว้ใน
GCKDiscoveryCriteriaอัปเดต
NSBonjourServicesคำจำกัดความของตัวอย่างต่อไปนี้และ แทนที่ "ABCD1234" ด้วย appID ของคุณ -
เพิ่ม
NSLocalNetworkUsageDescriptionลงในInfo.plistเราขอแนะนำอย่างยิ่งให้คุณปรับแต่งข้อความที่แสดงในข้อความแจ้งเครือข่ายในพื้นที่โดยการเพิ่มสตริงสิทธิ์เฉพาะแอปในไฟล์
Info.plistของแอปสำหรับNSLocalNetworkUsageDescriptionเช่น เพื่ออธิบายการค้นพบ Cast และบริการค้นพบอื่นๆ เช่น DIALข้อความนี้จะปรากฏเป็นส่วนหนึ่งของกล่องโต้ตอบการเข้าถึงเครือข่ายภายในของ iOS ดังที่แสดงในภาพจำลอง
-
เผยแพร่แอปของคุณอีกครั้งใน Apple App Store
เราขอแนะนำให้คุณเผยแพร่แอปอีกครั้งโดยใช้ 4.8.6 โดยเร็วที่สุด
การปรับแต่ง
การเริ่มต้นการค้นหาอุปกรณ์แคสต์
โดยค่าเริ่มต้น ระบบจะเริ่มการค้นหาอุปกรณ์ Cast เป็นครั้งแรกเมื่อผู้ใช้แตะปุ่มแคสต์ (GCKUICastButton) หากนี่เป็นครั้งแรกที่ผู้ใช้พยายามใช้แอป Cast ในเครือข่าย LAN โฆษณาคั่นหน้า LNA ใหม่จะปรากฏขึ้น ตามด้วยกล่องโต้ตอบสิทธิ์เข้าถึงเครือข่าย LAN ของ iOS
มีฟีเจอร์ใหม่ให้คุณควบคุมเวลาที่การค้นหาอุปกรณ์เริ่มต้น และลักษณะการทำงานขององค์ประกอบบางอย่างใน UX ดังนี้
startDiscoveryAfterFirstTapOnCastButton: BOOL(true/false)
ค่าเริ่มต้นคือ true โดยแฟล็กนี้จะมีผลเฉพาะเมื่อตั้งค่าแฟล็ก
GCKCastOptions::disableDiscoveryAutostart
เป็น false
หากตั้งค่าเป็น true การค้นหาอุปกรณ์แคสต์จะเริ่มขึ้นเมื่อผู้ใช้แตะ GCKUICastButton เป็นครั้งแรก ระบบจะแสดงข้อความข้อมูลแก่ผู้ใช้เพื่อแจ้งให้ทราบว่าเหตุใดจึงต้องมีสิทธิ์เข้าถึงเครือข่ายในเครื่อง
หลังจากข้อความดังกล่าว ระบบจะแสดงข้อความ LNA ของ iOS
การค้นหาอุปกรณ์แคสต์จะเริ่มขึ้นหลังจากที่คุณรับทราบข้อความ
ในการเปิดแอปครั้งต่อๆ ไป GCKUICastButton จะแสดงเสมอ
หากตั้งค่าเป็น false การค้นหาอุปกรณ์จะเริ่มตามค่าของ
Flag
GCKCastOptions::disableDiscoveryAutostart
คำถามที่พบบ่อย
จะเกิดอะไรขึ้นหากฉันเผยแพร่แอปตัวส่ง Cast อีกครั้งด้วย Cast SDK v4.4.8 และ Xcode 12
แอปอาจค้นหาอุปกรณ์ Cast ในเครือข่าย LAN ไม่ได้ เว้นแต่คุณจะได้รับสิทธิ์มัลติแคสต์เครือข่ายจาก Apple โปรดทราบว่า Apple จะไม่อนุญาตสิทธิ์แบบมัลติแคสต์เพื่อจุดประสงค์ในการรองรับ Cast เพียงอย่างเดียว หากวางแผนที่จะสร้างด้วย Xcode 12 คุณควรเผยแพร่แอป ด้วย Cast 4.6.0
ฉันต้องทำอะไรบ้างเพื่ออัปเดตแอปเมื่อมีการเปิดตัว Cast SDK เวอร์ชันใหม่
- อัปเดต
Info.plistของแอปให้มีคำอธิบายการใช้งานเครือข่ายในพื้นที่ - เพิ่ม
NSBonjourServicesลงในInfo.plistของแอป และระบุชื่อบริการ Bonjour สำหรับ Cast และรหัสแอป - อัปเกรดแอปผู้ส่งเพื่อใช้ Cast SDK 4.6.0
- เผยแพร่แอปอีกครั้งใน Apple App Store
เหตุใดอุปกรณ์จึงหยุดแสดงในเครื่องมือเลือกอุปกรณ์ที่กำหนดเองหลังจากที่ฉันอัปเกรดเป็น 4.6.0
ปัญหานี้เป็นปัญหาที่ทราบอยู่แล้วซึ่งอาจเกิดขึ้นหากคุณใช้ตัวเลือกอุปกรณ์ที่กำหนดเองแทนตัวเลือกอุปกรณ์มาตรฐาน ใน Cast SDK เวอร์ชัน 4.4.8 และเวอร์ชันก่อนหน้า การสแกนอุปกรณ์จะเป็นไปโดยอัตโนมัติ ตั้งแต่เวอร์ชัน
4.6.0 เป็นต้นไป คุณจะต้องเรียกใช้เมธอด startDiscovery
อย่างชัดเจนในคลาส
GCKDiscoveryManager เพื่อเริ่มการค้นหาอุปกรณ์
สาเหตุของการเปลี่ยนแปลงนี้คือข้อความแจ้งสิทธิ์เข้าถึงเครือข่ายภายใน (LNA) จะปรากฏขึ้นหลังจากที่แอปสแกนเป็นครั้งแรก ซึ่งอาจส่งผลให้กล่องโต้ตอบสิทธิ์ปรากฏในตำแหน่งแบบสุ่ม ในแอป
นักพัฒนาแอปที่สร้างเครื่องมือเลือกอุปกรณ์ที่กำหนดเองสำหรับแอปของตนจะต้องแสดงโฆษณาคั่นระหว่างหน้าแบบครั้งเดียว ก่อนเริ่มการสแกนอุปกรณ์เป็นครั้งแรก