Configuración del desarrollo con el framework de aplicaciones de Cast (CAF) para iOS

El framework de Cast admite iOS 14 y versiones posteriores, y está disponible en los frameworks estáticos y dinámicos.

Consulta la Referencia de la API de Google Cast para iOS para obtener descripciones de todas las clases y todos los métodos.

Configuración de Xcode

iOS 14

  1. Agrega el SDK de Cast para iOS 4.8.3 a tu proyecto

    Si usas CocoaPods, usa pod update para agregar el SDK 4.8.3 a tu proyecto.

    De lo contrario, extraer el SDK de forma manual.

  2. Agrega NSBonjourServices a tu Info.plist

    Especifica NSBonjourServices en tu Info.plist para permitirá que el descubrimiento de redes locales sea exitoso en iOS 14.

    Deberás agregar _googlecast._tcp y _<your-app-id>._googlecast._tcp como servicios para el dispositivo para que el descubrimiento funcione correctamente.

    El appID es tu receiverID, que es el mismo ID que se define en tu GCKDiscoveryCriteria.

    Actualiza la siguiente definición de ejemplo de NSBonjourServices y Reemplaza “ABCD1234” con el ID de tu app.

    <key>NSBonjourServices</key>
    <array>
      <string>_googlecast._tcp</string>
      <string>_ABCD1234._googlecast._tcp</string>
    </array>
  3. Agrega NSLocalNetworkUsageDescription a tu Info.plist

    Te recomendamos que personalices el mensaje que se muestra en la pestaña Local Mensaje de red agregando una cadena de permiso específica de la app al Info.plist para el NSLocalNetworkUsageDescription, como para describir la transmisión y otros servicios de descubrimiento, como DIAL.

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

    Este mensaje aparecerá como parte del diálogo de Acceso a la red local de iOS como que se muestra en la simulación.

    Imagen del diálogo de permisos de acceso a la red local de Cast
  4. Vuelve a lanzar la app en la App Store de Apple

    También te recomendamos que vuelvas a lanzar la app con la versión 4.8.3, como lo antes posible.

iOS 13

iOS 12

Asegúrate de que el interruptor Access WiFi Information en Capabilities del destino esté activada en “Activada”.

Además, tu perfil de aprovisionamiento deberá ser compatible con el servicio Access Wi-Fi Information. Esto se puede agregar Portal para desarrolladores de Apple.

Configuración de CocoaPods

La forma recomendada de integrar Google Cast es usar CocoaPods. Para la integración, usa el google-cast-sdk CocoaPods.

Para comenzar, sigue la guía de introducción.

Cuando CocoaPods esté configurado, sigue el guía de uso de CocoaPods a fin de que se cree tu Podfile y que tu proyecto esté listo para usarse con Google Cast de Google Cloud.

Este es un ejemplo de cómo agregar CocoaPod google-cast-sdk a tu 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

En tu proyecto, debes especificar un rango para tus Pods para evitar eventos cambios rotundos, como se detalla en el guía de podfile.

En este fragmento, la versión 4.8.3 y las versiones posteriores versiones principales (major.minor.patch):

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

Por ejemplo, “~> 1.6.7&#39; incluiría todas las versiones a partir de la 1.6.7, pero no incluida la versión 2.0.0.

Configuración manual

Las siguientes instrucciones te indican cómo agregar el SDK de Cast para iOS a tu proyecto sin usar CocoaPods:

Descargas

Después de descargar la biblioteca adecuada, sigue las pasos de configuración para agregar el framework a tu en un proyecto final.

Transmite las bibliotecas del SDK de Sender de iOS 4.8.3:

Estática Dinámica

Pasos para la configuración

Para instalar la biblioteca, haz lo siguiente:

  1. Descarga y extrae el SDK adecuado para tu proyecto.
  2. Configura la biblioteca dinámica de GoogleCastSDK:
  3. Arrastra el .xcframework descomprimido a tu proyecto principal en Navegador de proyectos de Xcode (no en el proyecto de Pods, si tienes uno) Marca la opción "Copiar todos los elementos si es necesario" y agrégalos a todas las orientaciones.
  4. En la pestaña General de la orientación de Xcode, selecciona Embed and Sign para GoogleCast.xcframework.

Si configuras la biblioteca estática, sigue estos pasos además de los pasos anteriores:

  1. Cómo configurar la biblioteca de Protobuf con la versión mínima v3.13.
    1. Si en tu proyecto se usa CocoaPods, haz lo siguiente:
      1. Abre tu Podfile y quita el elemento google-cast-sdk si está presente:
        pod 'google-cast-sdk'
      2. Agrega la biblioteca Protobuf si no está presente:
        pod 'Protobuf', '3.13'
      3. Ejecuta pod install en la carpeta raíz de tu proyecto.
    2. Si tu proyecto no usa CocoaPods, haz lo siguiente:
      1. Quita la versión actual de GoogleCastSDK, si está presente.
      2. Agrega la biblioteca de Protobuf v3.13 o superior. siguiendo las instrucciones que se encuentran en la GitHub de protobuf repo.
  2. En el proyecto de Xcode, agrega las marcas -ObjC -lc++ al Configuración de compilación > Otras marcas del vinculador.
  3. Ubica la carpeta Recursos en el directorio descomprimido y arrastrar GoogleCastCoreResources.bundle, GoogleCastUIResources.bundle y MaterialDialogs.bundle en tu proyecto junto a la GoogleCast.xcframework agregados anteriormente. Marca "Copiar todos los elementos si es necesario" y agrégalos a todos los destinos.

Configuración de Mac Catalyst

En el caso de las apps compatibles con Mac Catalyst, usa la biblioteca dinámica del SDK de Cast. Sigue el proceso de configuración manual para agregar las framework para tu proyecto. Luego, excluye de forma condicional el SDK de Cast del destino para Mac, como se menciona en la documentación de Apple. Las bibliotecas estáticas se precompilan para la arquitectura de iOS, lo que genera un error de vinculador cuando se compila para el destino de Mac.