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

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

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

إعداد Xcode

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

  1. إضافة حزمة تطوير البرامج (SDK) لنظام التشغيل iOS من Cast 4.8.4 إلى مشروعك

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

    وإلا، يمكنك جلب حزمة تطوير البرامج (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.4 في أقرب وقت ممكن.

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

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

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

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

إعداد CocoaPods

الطريقة المُقترَحة لدمج Google Cast هي استخدام CocoaPods. لإجراء عملية الدمج، استخدِم الـ google-cast-sdk CocoaPods.

للبدء، اتّبِع الـ دليل البدء.

بعد إعداد CocoaPods، اتّبِع الـ دليل استخدام CocoaPods لإنشاء ملف Podfile وإعداد مشروعك لاستخدامه مع حزمة تطوير البرامج (SDK) من Google Cast.

في ما يلي مثال على كيفية إضافة CocoaPod google-cast-sdk إلى ملف Podfile:

use_frameworks!

platform :ios, '15.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.4 والإصدارات حتى رقم الإصدار الرئيسي التالي (major.minor.patch):

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

على سبيل المثال، سيشمل الرمز "~> 1.6.7" جميع الإصدارات بدءًا من 1.6.7 وحتى الإصدار 2.0.0، ولكن لن يشمل هذا الإصدار الأخير.

الإعداد اليدوي

التعليمات التالية مخصّصة لإضافة حزمة تطوير البرامج (SDK) لنظام التشغيل iOS من Cast إلى مشروعك بدون استخدام CocoaPods:

عمليات التنزيل

بعد تنزيل المكتبة المناسبة أدناه، اتّبِع الـ خطوات الإعداد لإضافة إطار العمل إلى الـ مشروع.

مكتبات حزمة تطوير البرامج (SDK) للمرسِل على أجهزة iOS من Cast 4.8.4:

ثابت ديناميكي

خطوات الإعداد

لتثبيت المكتبة:

  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، استخدِم المكتبة الديناميكية لحزمة تطوير البرامج (SDK) من Cast. اتّبِع عملية الإعداد اليدوي لإضافة إطار العمل إلى مشروعك. بعد ذلك، استبعِد حزمة تطوير البرامج (SDK) من Cast بشكلٍ مشروط من هدف Mac كما هو موضّح في مستندات Apple. يتم تجميع المكتبات الثابتة مسبقًا من أجل بنية iOS، ما يؤدي إلى حدوث خطأ في الرابط عند الإنشاء مقابل هدف Mac.