เฟรมเวิร์ก Cast รองรับ iOS 14 ขึ้นไป และรองรับทั้ง และเฟรมเวิร์กแบบไดนามิก
ดูเอกสารอ้างอิง Google Cast iOS API สำหรับ คำอธิบายคลาสและเมธอดทั้งหมด
การตั้งค่า Xcode
iOS 14
-
เพิ่ม Cast iOS SDK 4.8.3 ลงในโปรเจ็กต์ของคุณ
หากใช้ CocoaPods ให้ใช้
pod update
เพื่อเพิ่ม SDK 4.8.3 ในโปรเจ็กต์ของคุณหรือไม่เช่นนั้น ดึง SDK ด้วยตัวเอง
-
เพิ่ม
NSBonjourServices
ลงในInfo.plist
ระบุ
NSBonjourServices
ในInfo.plist
เพื่อ ทำให้การค้นหาเครือข่าย LAN ประสบความสำเร็จใน iOS 14คุณจะต้องเพิ่มทั้ง
_googlecast._tcp
และ_<your-app-id>._googlecast._tcp
เป็นบริการสำหรับอุปกรณ์ เพื่อให้การค้นหาทำงานได้อย่างเหมาะสมappID คือ ReceiverID ซึ่งเป็นรหัสเดียวกับที่ระบุไว้ใน
GCKDiscoveryCriteria
อัปเดตตัวอย่างคำจำกัดความ
NSBonjourServices
ต่อไปนี้และ แทนที่ "ABCD1234" ด้วยรหัสแอปของคุณ -
เพิ่ม
NSLocalNetworkUsageDescription
ลงในInfo.plist
เราขอแนะนำให้คุณปรับแต่งข้อความที่แสดงใน ข้อความแจ้งเกี่ยวกับเครือข่ายด้วยการเพิ่มสตริงสิทธิ์เฉพาะแอปลงใน
Info.plist
ไฟล์สำหรับNSLocalNetworkUsageDescription
เช่น เพื่ออธิบายการแคสต์ บริการสำรวจและบริการค้นพบอื่นๆ เช่น DIALข้อความนี้จะปรากฏเป็นส่วนหนึ่งของกล่องโต้ตอบการเข้าถึงเครือข่าย LAN ของ iOS เป็น ที่แสดงในภาพจำลอง
-
เผยแพร่แอปใน Apple App Store อีกครั้ง
เราขอแนะนำให้คุณเปิดตัวแอปอีกครั้งโดยใช้ 4.8.3 ด้วย โดยเร็วที่สุด
iOS 13
iOS 12
ตรวจสอบว่าสวิตช์เข้าถึงข้อมูล Wi-Fi ในความสามารถ ของเป้าหมายตั้งค่าเป็น "เปิด"
นอกจากนี้ โปรไฟล์การจัดสรรจะต้องรองรับความสามารถเข้าถึงข้อมูล Wi-Fi ด้วย คุณสามารถเพิ่มข้อมูลนี้ได้ใน พอร์ทัลนักพัฒนาซอฟต์แวร์ของ Apple
การตั้งค่า CocoaPods
วิธีแนะนำในการผสานรวม Google Cast คือการใช้ CocoaPods สำหรับการผสานรวม ให้ใช้
google-cast-sdk
CocoaPods
หากต้องการเริ่มต้นใช้งาน ให้ทำตาม คู่มือเริ่มต้นใช้งาน
เมื่อตั้งค่า CocoaPods แล้ว ให้ทําตามคู่มือการใช้ CocoaPods เพื่อสร้าง Podfile
และเตรียมโปรเจ็กต์ให้พร้อมใช้งานกับ Google Cast SDK
ต่อไปนี้คือตัวอย่างวิธีเพิ่ม CocoaPod google-cast-sdk
ไปยัง
Podfile
:
use_frameworks!
platform :ios, '14.0'
def target_pods
pod 'google-cast-sdk'
end
target 'CastVideos-objc' do
target_pods
end
target 'CastVideos-swift' do
target_pods
end
สำหรับโปรเจ็กต์ คุณควรระบุช่วงสำหรับพ็อดเพื่อป้องกันไม่ให้เกิดที่ไม่คาดคิด การเปลี่ยนแปลงที่ส่งผลกับส่วนอื่นในระบบตามที่ระบุไว้ใน คู่มือ podfile
ในข้อมูลโค้ดนี้ เวอร์ชัน 4.8.3 และเวอร์ชันที่ใหม่กว่า อนุญาตให้ใช้เวอร์ชันหลัก (major.minor.patch) ดังนี้
pod 'google-cast-sdk', '~> 4.8.3'
เช่น '~> 1.6.7' จะรวมทุกเวอร์ชันตั้งแต่ 1.6.7 ขึ้นไป แต่ไม่รวม รวมถึงเวอร์ชัน 2.0.0
ตั้งค่าด้วยตนเอง
วิธีการต่อไปนี้มีไว้สำหรับการเพิ่ม Cast iOS SDK ลงในโปรเจ็กต์ของคุณ โดยไม่ต้องใช้ CocoaPods:
การดาวน์โหลด
หลังจากดาวน์โหลดไลบรารีที่เหมาะสมด้านล่าง ให้ทำตาม ขั้นตอนการตั้งค่าเพื่อเพิ่มเฟรมเวิร์ก
ไลบรารีของ Cast iOS Sender SDK 4.8.3
ขั้นตอนการตั้งค่า
วิธีติดตั้งไลบรารี
- ดาวน์โหลดและดึงข้อมูล SDK ที่เหมาะสมสำหรับโปรเจ็กต์ของคุณ
- ตั้งค่าไลบรารี GoogleCastSDK แบบไดนามิกโดยทำดังนี้
-
ลากไฟล์
.xcframework
ที่แตกแล้วไปยังโปรเจ็กต์หลักใน ตัวนำทางโปรเจ็กต์ Xcode (ไม่ใช่อยู่ในโปรเจ็กต์พ็อด หากคุณมี) เลือก "คัดลอกรายการทั้งหมดหากจำเป็น" แล้วเพิ่มลงในเป้าหมายทั้งหมด -
ในเป้าหมาย Xcode ในแท็บ
General
ให้เลือกEmbed and Sign
สำหรับGoogleCast.xcframework
หากคุณกำลังตั้งค่าไลบรารีแบบคงที่ โปรดทำตามขั้นตอนเหล่านี้เพิ่มเติมจาก ขั้นตอนก่อนหน้า:
- ตั้งค่าไลบรารี Protobuf ด้วยเวอร์ชันขั้นต่ำ v3.13
- หากโปรเจ็กต์ของคุณใช้ CocoaPods ให้ทำดังนี้
-
เปิด
Podfile
และนำgoogle-cast-sdk
หากมี:pod 'google-cast-sdk'
-
เพิ่มไลบรารี
Protobuf
หากไม่มี:pod 'Protobuf', '3.13'
-
เรียกใช้
pod install
ในโฟลเดอร์รูทของโปรเจ็กต์ - หากโปรเจ็กต์ไม่ได้ใช้ CocoaPods ให้ทำดังนี้
-
นำ
GoogleCastSDK
เวอร์ชันปัจจุบันออก หากมี - เพิ่มไลบรารี Protobuf v3.13 ขึ้นไป โดยทำตามคำแนะนำใน Protobuf GitHub ที่เก็บ
-
ในโปรเจ็กต์ Xcode ให้เพิ่มแฟล็ก
-ObjC -lc++
ไปยัง การตั้งค่าบิลด์ > แฟล็ก Linker อื่นๆ -
ค้นหาโฟลเดอร์ Resources ในไดเรกทอรีที่แตกไฟล์แล้ว และ
ลาก
GoogleCastCoreResources.bundle
GoogleCastUIResources.bundle
และMaterialDialogs.bundle
ในโปรเจ็กต์ของคุณถัดจากGoogleCast.xcframework
เพิ่มไว้ก่อนหน้านี้ เลือก "คัดลอกรายการทั้งหมดหากจำเป็น" แล้วเพิ่มลงในทุกรายการ เป้าหมาย
ตั้งค่า Mac Catalyst
สำหรับแอปที่รองรับ Mac Catalyst ให้ใช้ไลบรารีแบบไดนามิกของ Cast SDK ทำตามขั้นตอนการตั้งค่าด้วยตนเองเพื่อเพิ่ม เฟรมเวิร์กของคุณลงในโครงการ จากนั้นยกเว้น Cast SDK สำหรับเครื่อง Mac อย่างมีเงื่อนไข เป้าหมายตามที่ระบุไว้ใน เอกสารประกอบของ Apple ไลบรารีแบบคงที่ได้รับการคอมไพล์ล่วงหน้าสำหรับสถาปัตยกรรม iOS ซึ่งทำให้เกิด Linker เมื่อสร้างกับเป้าหมาย Mac