การตั้งค่าสำหรับการพัฒนาด้วย Cast Application Framework (CAF) สำหรับ iOS

เฟรมเวิร์ก Cast รองรับ iOS 16 ขึ้นไป และมีทั้งเฟรมเวิร์กแบบคงที่และแบบไดนามิก

ดูคำอธิบายของคลาสและเมธอดทั้งหมดได้ที่ข้อมูลอ้างอิง Google Cast iOS APIสำหรับ

การตั้งค่า Xcode

iOS 14

  1. เพิ่ม Cast iOS SDK 4.8.6 ลงในโปรเจ็กต์

    หากใช้ CocoaPods ให้ใช้ pod update เพื่อเพิ่ม SDK 4.8.6 ลงในโปรเจ็กต์

    หรือดึง SDK เข้ามาด้วยตนเอง

  2. เพิ่ม NSBonjourServices ลงใน Info.plist

    ระบุ NSBonjourServices ใน Info.plist เพื่อ ให้การค้นหาเครือข่ายในพื้นที่สำเร็จใน iOS 14

    คุณจะต้องเพิ่มทั้ง _googlecast._tcp และ _<your-app-id>._googlecast._tcp เป็นบริการเพื่อให้การค้นหาอุปกรณ์ ทำงานได้อย่างถูกต้อง

    appID คือ receiverID ซึ่งเป็นรหัสเดียวกับที่กำหนดไว้ใน GCKDiscoveryCriteria

    อัปเดตคำจำกัดความ NSBonjourServices ในตัวอย่างต่อไปนี้และ แทนที่ "ABCD1234" ด้วย appID

    <key>NSBonjourServices</key>
    <array>
      <string>_googlecast._tcp</string>
      <string>_ABCD1234._googlecast._tcp</string>
    </array>
  3. เพิ่ม NSLocalNetworkUsageDescription ลงใน Info.plist

    เราขอแนะนำอย่างยิ่งให้คุณปรับแต่งข้อความที่แสดงในพรอมต์เครือข่ายในพื้นที่ โดยเพิ่มสตริงการอนุญาตเฉพาะแอปในไฟล์ Info.plist ของแอปสำหรับ NSLocalNetworkUsageDescription เช่น เพื่ออธิบายการค้นหา Cast และบริการค้นหาอื่นๆ เช่น DIAL

    <key>NSLocalNetworkUsageDescription</key>
    <string>${PRODUCT_NAME} uses the local network to discover Cast-enabled devices on your WiFi
    network.</string>

    ข้อความนี้จะปรากฏเป็นส่วนหนึ่งของกล่องโต้ตอบการเข้าถึงเครือข่ายในพื้นที่ของ iOS ดังที่ แสดงในภาพจำลอง

    รูปภาพกล่องโต้ตอบสิทธิ์เข้าถึงเครือข่ายภายในของ Cast
  4. เผยแพร่แอปอีกครั้งไปยัง Apple App Store

    เราขอแนะนำให้คุณเผยแพร่แอปอีกครั้งโดยใช้เวอร์ชัน 4.8.6 โดยเร็วที่สุด

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, '16.0'

def target_pods
  pod 'google-cast-sdk'
end

target 'CastVideos-objc' do
  target_pods
end
target 'CastVideos-swift' do
  target_pods
end

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

ในข้อมูลโค้ดนี้ ระบบอนุญาตเวอร์ชัน 4.8.6 และเวอร์ชันจนถึงเวอร์ชันหลักถัดไป (major.minor.patch)

pod 'google-cast-sdk', '~> 4.8.6'

เช่น "~> 1.6.7" จะรวมเวอร์ชันทั้งหมดตั้งแต่ 1.6.7 ขึ้นไป แต่ไม่รวมเวอร์ชัน 2.0.0

ตั้งค่าด้วยตนเอง

วิธีการต่อไปนี้ใช้สำหรับเพิ่ม Cast iOS SDK ลงในโปรเจ็กต์โดยไม่ใช้ CocoaPods

ดาวน์โหลด

หลังจากดาวน์โหลดไลบรารีที่เหมาะสมด้านล่างแล้ว ให้ทำตาม ขั้นตอนการตั้งค่าเพื่อเพิ่มเฟรมเวิร์กลงใน โปรเจ็กต์

ไลบรารี Cast iOS Sender SDK 4.8.6

คงที่ ไดนามิก

ขั้นตอนการตั้งค่า

วิธีติดตั้งไลบรารี

  1. ดาวน์โหลดและแยก SDK ที่เหมาะสมสำหรับโปรเจ็กต์
  2. ตั้งค่าไลบรารี GoogleCastSDK แบบไดนามิก
  3. ลาก .xcframework ที่คลายซิปแล้วลงในโปรเจ็กต์หลักใน ตัวนำทางโปรเจ็กต์ Xcode (ไม่ใช่ลงในโปรเจ็กต์ Pods หากมี) เลือก "คัดลอกรายการทั้งหมดหากจำเป็น" แล้วเพิ่มลงในเป้าหมายทั้งหมด
  4. ในเป้าหมาย Xcode ให้เลือก Embed and Sign สำหรับ GoogleCast.xcframework ในแท็บ General

หากคุณกำลังตั้งค่าไลบรารีแบบไดนามิก ให้ทำตามขั้นตอนต่อไปนี้เพิ่มเติมจากขั้นตอนก่อนหน้า

  1. ตั้งค่าไลบรารี Protobuf ด้วยเวอร์ชันขั้นต่ำ v3.13
    1. หากโปรเจ็กต์ใช้ CocoaPods ให้ทำดังนี้
      1. เปิด Podfile แล้วนำ google-cast-sdk ออกหากมี
        pod 'google-cast-sdk'
      2. เพิ่มไลบรารี Protobuf หากไม่มี
        pod 'Protobuf', '3.13'
      3. เรียกใช้ pod install ในโฟลเดอร์รูทของโปรเจ็กต์
    2. หากโปรเจ็กต์ไม่ได้ใช้ CocoaPods ให้ทำดังนี้
      1. นำ GoogleCastSDK เวอร์ชันปัจจุบันออกหากมี
      2. เพิ่มไลบรารี Protobuf เวอร์ชัน 3.13 ขึ้นไป โดยทำตามวิธีการที่พบใน ที่เก็บข้อมูล Protobuf GitHub repo

หากคุณกำลังตั้งค่าไลบรารีแบบคงที่ ให้ทำตามขั้นตอนต่อไปนี้เพิ่มเติมจากขั้นตอนก่อนหน้า

  1. ในโปรเจ็กต์ Xcode ให้เพิ่มแฟล็ก -ObjC -lc++ ลงใน การตั้งค่าการสร้าง > แฟล็ก Linker อื่นๆ
  2. ค้นหาโฟลเดอร์ Resources ในไดเรกทอรีที่คลายซิปแล้ว ลากไฟล์ .bundle ทั้งหมดลงในโปรเจ็กต์ข้าง GoogleCast.xcframework ที่คุณเพิ่มไว้ก่อนหน้านี้ เลือก "คัดลอกรายการทั้งหมด หากจำเป็น" แล้วเพิ่มลงในเป้าหมายทั้งหมด

การตั้งค่า Mac Catalyst

สำหรับแอปที่รองรับ Mac Catalyst ให้ใช้ไลบรารีแบบไดนามิกของ Cast SDK ทำตามกระบวนการตั้งค่าด้วยตนเองเพื่อเพิ่ม เฟรมเวิร์กลงในโปรเจ็กต์ จากนั้นยกเว้น Cast SDK จากเป้าหมาย Mac แบบมีเงื่อนไขตามที่ระบุไว้ใน เอกสารประกอบของ Apple ไลบรารีแบบคงที่ได้รับการคอมไพล์ล่วงหน้าสำหรับสถาปัตยกรรม iOS ซึ่งทำให้เกิดข้อผิดพลาดของ Linker เมื่อสร้างเทียบกับเป้าหมาย Mac