El framework de Cast admite iOS 13 y versiones posteriores, y se ofrece en 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 los métodos.
Configuración de Xcode
iOS 14
-
Agrega el SDK de Cast para iOS 4.8.0 a tu proyecto.
Si usas CocoaPods, usa
pod update
para agregar el SDK 4.8.0 a tu proyecto.De lo contrario, extrae el SDK de forma manual.
-
Agrega
NSBonjourServices
a tuInfo.plist
Especifica
NSBonjourServices
en tuInfo.plist
para permitir que la detección de la red local tenga éxito en iOS 14.Deberás agregar
_googlecast._tcp
y_<your-app-id>._googlecast._tcp
como servicios para que la detección de dispositivos funcione correctamente.El appID es elReceiverID, que es el mismo ID que se define en tu
GCKDiscoveryCriteria
.Actualiza la siguiente definición de
NSBonjourServices
de ejemplo y reemplaza "ABCD1234" por el ID de la app. -
Add
NSLocalNetworkUsageDescription
to yourInfo.plist
We strongly recommend that you customize the message shown in the Local Network prompt by adding an app-specific permission string in your app's
Info.plist
file for theNSLocalNetworkUsageDescription
such as to describe Cast discovery and other discovery services, like DIAL.This message will appear as part of the iOS Local Network Access dialog as shown in the mock.
-
Re-release your app to the Apple App Store
We recommend you also re-release your app using 4.8.0 as soon as possible.
iOS 13
iOS 12
Ensure that the Access WiFi Information switch in the Capabilities section of the target is set to "On".
Additionally, your provisioning profile will need to support the Access WiFi Information capability. This can be added in the Apple Developer Portal.
CocoaPods setup
The recommended way of integrating Google Cast is using CocoaPods. CocoaPods is supported for both the Universal Framework and XCFramework.
For a Universal Framework integration, use the
google-cast-sdk
and
google-cast-sdk-no-bluetooth
CocoaPods.
For an XCFramework integration, use the google-cast-sdk-xcframework
and
google-cast-sdk-no-bluetooth-xcframework
CocoaPods.
To get started, follow the getting started guide.
Once CocoaPods is set up, follow the
using CocoaPods guide
to get your Podfile
created and your project ready to use with the Google Cast
SDK.
Here's an example of how to add the google-cast-sdk
CocoaPod to your
Podfile
:
use_frameworks!
platform :ios, '13.0'
def target_pods
pod 'google-cast-sdk'
end
target 'CastVideos-objc' do
target_pods
end
target 'CastVideos-swift' do
target_pods
end
Este es un ejemplo de cómo agregar el CocoaPod google-cast-sdk-no-bluetooth
a tu Podfile
:
use_frameworks!
platform :ios, '13.0'
def target_pods
pod 'google-cast-sdk-no-bluetooth'
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 a fin de evitar cambios rotundos inesperados, como se detalla en la guía de Pods.
En este fragmento, se permiten la versión 4.8.0 y las versiones posteriores a la siguiente versión principal (major.minor.patch):
pod 'google-cast-sdk', '~> 4.8.0'
Por ejemplo, "~> 1.6.7" incluiría todas las versiones desde la 1.6.7 hasta la 2.0.0, pero no incluidas.
Configuración manual
Las siguientes instrucciones sirven para agregar el SDK de Cast para iOS a tu proyecto sin usar CocoaPods:
Descargas
Después de descargar la biblioteca correspondiente a continuación, sigue los pasos de configuración para agregar el framework a tu proyecto. Los requisitos de configuración son los mismos para XCFrameworks que los Universal Frameworks heredados.
Marco de trabajo universal
Bibliotecas del SDK de Cast para iOS 4.8.0:
Estática con Bluetooth Estática sin Bluetooth
Dinámico con Bluetooth Dinámico sin Bluetooth
XCFramework
El SDK de Cast para iOS es compatible con XCFrameworks, lo que permite el desarrollo en computadoras Mac con Apple Silicon, junto con la depuración mediante el simulador de iOS.
Bibliotecas de XCFramework 4.8.0 del SDK de Cast para iOS:
XCFramework estático con Bluetooth XCFramework estático sin Bluetooth
XCFramework dinámico con Bluetooth XCFramework dinámico sin Bluetooth
Pasos de la configuración
Para instalar una de las bibliotecas estáticas, haz lo siguiente:
- Descarga y descomprime el SDK estático adecuado para tu proyecto.
- Configura la biblioteca de Protobuf con la versión mínima v3.13.
- Si tu proyecto usa CocoaPods:
-
Abre tu
Podfile
y quita elgoogle-cast-sdk
si está presente:pod 'google-cast-sdk'
-
Agrega la biblioteca
Protobuf
si no está presente:pod 'Protobuf', '3.13'
-
Ejecuta
pod install
en la carpeta raíz de tu proyecto. - Si tu proyecto no usa CocoaPods:
-
Quita la versión actual de
GoogleCastSDK
si está presente. - Para agregar la biblioteca de Protobuf 3.13 o una versión posterior, sigue las instrucciones que se encuentran en el repositorio de Protobuf en GitHub.
-
Arrastra el elemento
.framework
o.xcframework
descomprimido a tu proyecto principal en el navegador de proyectos de Xcode (no al proyecto de Pods, si tienes uno). Marca la opción "Copiar todos los elementos si es necesario" y agrégalo a todas las opciones de segmentación. -
En tu proyecto de Xcode, agrega las marcas
-ObjC -lc++
a Build Settings > Other Linker Flags. -
Haz clic con el botón derecho en
GoogleCast.framework
oGoogleCast.xcframework
en tu proyecto y selecciona “Mostrar en el Finder”. -
Arrastra
GoogleCastCoreResources.bundle
yGoogleCastUIResources.bundle
a tu proyecto junto aGoogleCast.framework
oGoogleCast.xcframework
que agregaste antes, marca la opción “Copiar todos los elementos si es necesario” y agrégalos a todos los destinos.
Para instalar una de las bibliotecas dinámicas, haz lo siguiente:
- Descarga y descomprime el SDK dinámico adecuado para tu proyecto.
- Configura la biblioteca dinámica GoogleCastSDK:
- Si tu proyecto usa CocoaPods:
-
Abre tu
Podfile
y quita lo siguiente:pod 'google-cast-sdk'
-
Ejecuta
pod install
en la carpeta raíz de tu proyecto. - Si el proyecto no usa CocoaPods, quita la biblioteca actual de Google Cast.
-
Arrastra el elemento
.framework
o.xcframework
descomprimido a tu proyecto principal en el navegador de proyectos de Xcode (no al proyecto de Pods, si tienes uno). Marca la opción "Copiar todos los elementos si es necesario" y agrégalo a todas las opciones de segmentación. -
En el destino de Xcode, en la pestaña
General
, seleccionaEmbed and Sign
paraGoogleCast.framework
oGoogleCast.xcframework
.
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 el framework a tu proyecto. Luego, excluye condicionalmente el SDK de Cast del destino para Mac, como se indica en la documentación de Apple. Las bibliotecas estáticas se compilan previamente para la arquitectura de iOS, lo que genera un error de vinculador cuando se compila en el destino de Mac.
Cómo publicar tu app en App Store
Antes de publicar tu app en App Store, debes ejecutar la secuencia de comandos de shell strip_unused_archs.sh
para quitar las arquitecturas que no se usan del paquete de aplicación. Esta secuencia de comandos está en el SDK de Cast para iOS.