Настройка для разработки с использованием Cast Application Framework (CAF) для iOS

Фреймворк Cast поддерживает iOS 14 и более поздние версии и доступен как в статическом, так и в динамическом формате.

Описание всех классов и методов см. в справочнике Google Cast iOS API.

Настройка Xcode

iOS 14

  1. Добавьте Cast iOS SDK 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 в качестве служб.

    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, как показано в макете.

    Изображение диалогового окна разрешений на доступ к локальной сети
  4. Повторно выпустите свое приложение в Apple App Store

    Мы рекомендуем вам как можно скорее перевыпустить приложение с версией 4.8.3.

iOS 13

iOS 12

Убедитесь, что переключатель « Доступ к информации о WiFi» в разделе « Возможности» целевого устройства установлен в положение «Вкл.».

Кроме того, ваш профиль подготовки должен поддерживать функцию доступа к информации Wi-Fi . Эту функцию можно добавить на портале разработчиков Apple .

Настройка CocoaPods

Рекомендуемый способ интеграции Google Cast — использование CocoaPods . Для интеграции используйте google-cast-sdk CocoaPods.

Чтобы приступить к работе, следуйте руководству по началу работы .

После настройки CocoaPods следуйте руководству по использованию CocoaPods , чтобы создать Podfile и подготовить проект к использованию с Google Cast SDK.

Вот пример того, как добавить 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

Для вашего проекта вам следует указать диапазон для ваших модулей, чтобы предотвратить неожиданные критические изменения, как подробно описано в руководстве по модулю .

В этом фрагменте разрешены версия 4.8.3 и версии до следующей основной версии (major.minor.patch):

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

Например, «~> 1.6.7» будет включать все версии от 1.6.7 и выше, но не включая версию 2.0.0.

Ручная настройка

Следующие инструкции предназначены для добавления Cast iOS SDK в ваш проект без использования CocoaPods:

Загрузки

После загрузки соответствующей библиотеки ниже следуйте инструкциям по настройке , чтобы добавить фреймворк в свой проект.

Библиотеки Cast iOS Sender SDK 4.8.3:

Статика Динамика

Шаги настройки

Чтобы установить библиотеку:

  1. Загрузите и распакуйте соответствующий SDK для вашего проекта.
  2. Настройте динамическую библиотеку GoogleCastSDK:
  3. Перетащите распакованный файл .xcframework в основной проект в навигаторе проектов Xcode (не в проект Pods, если он у вас есть). Установите флажок «Копировать все элементы при необходимости» и добавьте во все целевые объекты.
  4. В целевом приложении Xcode на вкладке General выберите Embed and Sign для GoogleCast.xcframework .

Если вы настраиваете статическую библиотеку, выполните следующие шаги в дополнение к предыдущим шагам:

  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 .
  2. В вашем проекте Xcode добавьте флаги -ObjC -lc++ в Настройки сборки > Другие флаги компоновщика .
  3. Найдите папку Resources в распакованном каталоге и перетащите файлы GoogleCastCoreResources.bundle , GoogleCastUIResources.bundle и MaterialDialogs.bundle в свой проект рядом с ранее добавленным фреймворком GoogleCast.xcframework . Установите флажок «Копировать все элементы при необходимости» и добавьте их во все целевые объекты.

Настройка Mac Catalyst

Для приложений, поддерживающих Mac Catalyst, используйте динамическую библиотеку Cast SDK. Следуйте инструкциям по ручной настройке , чтобы добавить фреймворк в свой проект. Затем исключите Cast SDK из целевой платформы Mac, как указано в документации Apple . Статические библиотеки предварительно скомпилированы для архитектуры iOS, что приводит к ошибке компоновщика при сборке для целевой платформы Mac.