เฟรมเวิร์กของ Cast รองรับ iOS 14 ขึ้นไป และมีทั้งเฟรมเวิร์กแบบคงที่และแบบไดนามิก
ดูคำอธิบายคลาสและเมธอดทั้งหมดได้ที่เอกสารอ้างอิง Google Cast iOS API
ตั้งค่า Xcode
iOS 14
-
เพิ่ม Cast iOS SDK 4.8.1 ลงในโปรเจ็กต์
หากใช้ CocoaPods ให้ใช้
pod update
เพื่อเพิ่ม SDK 4.8.1 ลงในโปรเจ็กต์มิเช่นนั้น ให้ ดึง SDK ด้วยตนเอง
-
เพิ่ม
NSBonjourServices
ลงในInfo.plist
ของคุณระบุ
NSBonjourServices
ในInfo.plist
เพื่อให้การค้นหาเครือข่ายในเครื่องประสบความสำเร็จใน iOS 14คุณจะต้องเพิ่มทั้ง
_googlecast._tcp
และ_<your-app-id>._googlecast._tcp
เป็นบริการเพื่อให้การค้นหาอุปกรณ์ทำงานได้อย่างถูกต้องappID คือ getrID ซึ่งเป็นรหัสเดียวกับที่กําหนดไว้ใน
GCKDiscoveryCriteria
อัปเดตคำจำกัดความของ
NSBonjourServices
ในตัวอย่างต่อไปนี้และแทนที่ "ABCD1234" ด้วย appID ของคุณ -
Add
NSLocalNetworkUsageDescription
to yourInfo.plist
We strongly recommend that you customize the message shown in the Local Network prompt by adding an app-specific permission string in your app's
Info.plist
file for theNSLocalNetworkUsageDescription
such as to describe Cast discovery and other discovery services, like DIAL.This message will appear as part of the iOS Local Network Access dialog as shown in the mock.
-
Re-release your app to the Apple App Store
We recommend you also re-release your app using 4.8.1 as soon as possible.
iOS 13
iOS 12
Ensure that the Access WiFi Information switch in the Capabilities section of the target is set to "On".
Additionally, your provisioning profile will need to support the Access WiFi Information capability. This can be added in the Apple Developer Portal.
CocoaPods setup
The recommended way of integrating Google Cast is using
CocoaPods. For integration, use the
google-cast-sdk
CocoaPods.
To get started, follow the getting started guide.
Once CocoaPods is set up, follow the
using CocoaPods guide
to get your Podfile
created and your project ready to use with the Google Cast
SDK.
Here's an example of how to add the google-cast-sdk
CocoaPod to your
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.1 และเวอร์ชันจนถึงเวอร์ชันหลักถัดไป (major.minor.patch) ได้รับอนุญาต
pod 'google-cast-sdk', '~> 4.8.1'
เช่น "~> 1.6.7" จะรวมทุกเวอร์ชันตั้งแต่ 1.6.7 ขึ้นไป แต่ไม่รวมเวอร์ชัน 2.0.0
ตั้งค่าด้วยตนเอง
วิธีการต่อไปนี้มีไว้สำหรับการเพิ่ม Cast iOS SDK ลงในโปรเจ็กต์ของคุณโดยไม่ต้องใช้ CocoaPods
รายการที่ดาวน์โหลด
หลังจากดาวน์โหลดไลบรารีที่เหมาะสมด้านล่างแล้ว ให้ทำตามขั้นตอนการตั้งค่าเพื่อเพิ่มเฟรมเวิร์กลงในโปรเจ็กต์ของคุณ
ไลบรารี Cast iOS Sender เวอร์ชัน 4.8.1
ขั้นตอนการตั้งค่า
วิธีติดตั้งไลบรารี
- ดาวน์โหลดและแยก 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 -
ค้นหาโฟลเดอร์ทรัพยากรในไดเรกทอรีที่แตกไฟล์แล้ว และลาก
GoogleCastCoreResources.bundle
,GoogleCastUIResources.bundle
และMaterialDialogs.bundle
ลงในโปรเจ็กต์ถัดจากGoogleCast.xcframework
ที่เพิ่มไว้ก่อนหน้านี้ เลือก "คัดลอกรายการทั้งหมดหากจำเป็น" และเพิ่มไปยังเป้าหมายทั้งหมด
การตั้งค่า Mac Catalyst
สำหรับแอปที่รองรับ Mac Catalyst ให้ใช้ไลบรารีแบบไดนามิกของ Cast SDK ทำตามขั้นตอนการตั้งค่าด้วยตนเองเพื่อเพิ่มเฟรมเวิร์กลงในโปรเจ็กต์ จากนั้นให้ยกเว้น Cast SDK อย่างมีเงื่อนไขจากเป้าหมาย Mac ตามที่ได้กล่าวไว้ในเอกสารประกอบของ Apple ไลบรารีแบบคงที่ได้รับการคอมไพล์ล่วงหน้าสำหรับสถาปัตยกรรม iOS ซึ่งทำให้เกิดข้อผิดพลาด Linker เมื่อสร้างโดยเทียบกับเป้าหมาย Mac