إعداد التطوير باستخدام إطار عمل تطبيق Cast (CAF) لنظام التشغيل iOS

يتوافق إطار عمل Cast مع الإصدار 16 من نظام التشغيل iOS والإصدارات الأحدث، ويتوفّر في كلّ من إطارات العمل الثابتة والديناميكية.

يمكنك الاطّلاع على مرجع Google Cast iOS API للحصول على أوصاف لجميع الفئات والطُرق.

إعداد Xcode

الإصدار 14 من نظام التشغيل iOS

  1. إضافة حزمة Cast iOS SDK 4.8.6 إلى مشروعك

    في حال استخدام CocoaPods، استخدِم الأمر pod update لإضافة حزمة SDK 4.8.6 إلى مشروعك.

    بخلاف ذلك، يمكنك جلب حزمة SDK يدويًا.

  2. إضافة NSBonjourServices إلى Info.plist

    حدِّد NSBonjourServices في ملف Info.plist للسماح بنجاح عملية البحث عن الشبكة المحلية على الإصدار 14 من نظام التشغيل iOS.

    عليك إضافة كلّ من _googlecast._tcp و _<your-app-id>._googlecast._tcp كخدمات لكي تعمل عملية البحث عن الأجهزة بشكلٍ سليم.

    معرّف التطبيق هو معرّف جهاز الاستقبال، وهو المعرّف نفسه المحدّد في GCKDiscoveryCriteria.

    عدِّل تعريف NSBonjourServices في المثال التالي واستبدِل "ABCD1234" بمعرّف تطبيقك.

    <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 كما هو موضّح في النموذج الأولي.

    صورة مربّع حوار أذونات الوصول إلى الشبكة المحلية لبدء الإرسال
  4. إعادة نشر تطبيقك على Apple App Store

    ننصحك أيضًا بإعادة نشر تطبيقك باستخدام الإصدار 4.8.6 في أقرب وقت ممكن.

الإصدار 13 من نظام التشغيل iOS

الإصدار 12 من نظام التشغيل iOS

تأكَّد من ضبط مفتاح الوصول إلى معلومات Wi-Fi على "مفعّل" في قسم الإمكانات في الهدف.

بالإضافة إلى ذلك، يجب أن يتيح ملف الإعداد إمكانية الوصول إلى معلومات Wi-Fi. يمكن إضافة هذه الإمكانية في Apple Developer Portal.

إعداد 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

بالنسبة إلى مشروعك، عليك تحديد نطاق للوحدات البرمجية لتجنُّب التغييرات غير المتوقّعة التي قد تؤدي إلى حدوث مشاكل، كما هو موضّح في دليل ملف 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 إذا كان لديك مشروع). ضَع علامة في المربّع "نسخ كل العناصر إذا لزم الأمر" (Copy all items if needed)، وأضِفها إلى جميع الأهداف.
  4. في هدف Xcode، ضمن علامة التبويب General، اختَر Embed and Sign لـ GoogleCast.xcframework.

إذا كنت تُعدّ المكتبة الديناميكية ، اتّبِع الخطوات التالية بالإضافة إلى الخطوات السابقة:

  1. أعِدّ مكتبة Protobuf بالإصدار 3.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++ إلى إعدادات الإصدار > علامات الرابط الأخرى.
  2. حدِّد موقع مجلد Resources في الدليل الذي تم فك ضغطه و اسحب جميع ملفات .bundle إلى مشروعك بجانب GoogleCast.xcframework الذي أضفته سابقًا. ضع علامة في المربّع "نسخ كل العناصر إذا لزم الأمر" (Copy all items if needed)، وأضِفها إلى جميع الأهداف.

إعداد Mac Catalyst

بالنسبة إلى التطبيقات التي تتوافق مع Mac Catalyst، استخدِم المكتبة الديناميكية لحزمة Cast SDK. اتّبِع عملية الإعداد اليدوي لإضافة إطار العمل إلى مشروعك. بعد ذلك، استبعِد حزمة Cast SDK بشكلٍ مشروط من هدف Mac كما هو موضّح في مستندات Apple. يتم تجميع المكتبات الثابتة مسبقًا لبنية iOS، ما يؤدي إلى حدوث خطأ في الرابط عند الإنشاء مقابل هدف Mac.