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

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

راجِع مرجع واجهة برمجة التطبيقات Google Cast iOS للاطّلاع على أوصاف جميع الفئات وطرق الإعداد.

إعداد Xcode

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

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

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

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

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

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

    يجب إضافة كل من _googlecast._tcp و_<your-app-id>._googlecast._tcp كخدمات حتى تعمل ميزة &quot;العثور على الأجهزة&quot; بشكل صحيح.

    ‫appID هو receiverID، وهو المعرّف نفسه الذي تم تحديده في 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.3 في أقرب وقت ممكن.

‫iOS 13

iOS 12

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

بالإضافة إلى ذلك، يجب أن يتيح ملف الإعداد إمكانية الوصول إلى معلومات شبكة Wi-Fi. يمكن إضافة ذلك في بوابة مطوّري Apple.

إعداد CocoaPods

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

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

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

في ما يلي مثال على كيفية إضافة google-cast-sdk CocoaPod إلى 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، ولكن بدون الإصدار 2.0.0.

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

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

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

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

مكتبات الإصدار 4.8.3 من حزمة تطوير البرامج (SDK) لتطبيق Cast iOS Sender:

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

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

لتثبيت المكتبة، اتّبِع الخطوات التالية:

  1. نزِّل حزمة SDK المناسبة لمشروعك واستخرِجها.
  2. إعداد مكتبة GoogleCastSDK الديناميكية:
  3. اسحب ملف .xcframework الذي تم فك ضغطه إلى مشروعك الرئيسي في نافذة مستكشف مشروع Xcode (وليس إلى مشروع Pods إذا كان لديك مشروع). ضَع علامة في المربّع بجانب "نسخ كل العناصر إذا لزم الأمر"، وأضِفها إلى جميع الأهداف.
  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.
  2. في مشروع Xcode، أضِف العلامات -ObjC -lc++ إلى إعدادات الإنشاء > علامات الربط الأخرى.
  3. ابحث عن مجلد Resources في الدليل الذي تم فك ضغطه، ثم اسحب GoogleCastCoreResources.bundle وGoogleCastUIResources.bundle وMaterialDialogs.bundle إلى مشروعك بجانب GoogleCast.xcframework الذي أضفته سابقًا. ضَع علامة في المربّع بجانب "نسخ كل العناصر إذا لزم الأمر"، ثم أضِفها إلى جميع الاستهدافات.

إعداد Mac Catalyst

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