El framework de Cast es compatible con iOS 12 y versiones posteriores, y viene 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.
Ten en cuenta que los dispositivos de transmisión más recientes admiten el modo de invitado para iOS, pero los dispositivos de generación anterior no lo son. Para obtener más información, consulta Modo de invitado: dispositivos de transmisión compatibles.
Configuración de Xcode
iOS 14
-
Cómo agregar el SDK de Cast para iOS 4.7.0 a tu proyecto
Si usas CocoaPods, usa
pod update
para agregar el SDK 4.7.0 a tu proyecto.De lo contrario, extrae el SDK de forma manual.
-
Agrega
NSBonjourServices
a tuInfo.plist
Especifica
NSBonjourServices
enInfo.plist
para permitir que el descubrimiento de red local se realice correctamente en iOS 14.Deberás agregar
_googlecast._tcp
y_<your-app-id>._googlecast._tcp
como servicios para que el descubrimiento de dispositivos funcione correctamente.El appID es tu receptorID, que es el mismo ID que se define en tu
GCKDiscoveryCriteria
.Actualiza la siguiente definición de ejemplo de
NSBonjourServices
y reemplaza “ABCD1234” con tu appID. -
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.7.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.
The google-cast-sdk and
google-cast-sdk-no-bluetooth
CocoaPods are available for download.
Use the google-cast-sdk-no-bluetooth
if your app does not require
guest mode or you do not wish to require Bluetooth®
permission.
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, '12.0'
def target_pods
pod 'google-cast-sdk'
end
target 'CastVideos-objc' do
target_pods
end
target 'CastVideos-swift' do
target_pods
end
A continuación, se muestra un ejemplo de cómo agregar el CocoaPod google-cast-sdk-no-bluetooth
a tu Podfile
:
use_frameworks!
platform :ios, '12.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
Para tu proyecto, debes especificar un rango para tus pods a fin de evitar cambios rotundos inesperados, como se detalla en la guía del podfile.
En este fragmento, se permite la versión 4.7.0 y las versiones posteriores a la siguiente versión principal (major.minor.patch):
pod 'google-cast-sdk', '~> 4.7.0'
Por ejemplo, “~> 1.6.7” incluiría todas las versiones de 1.6.7 y posteriores, pero no así las 2.0.0.
Configuración manual
Las siguientes instrucciones son para agregar el SDK de Cast para iOS a tu proyecto sin usar CocoaPods:
Descargas
Después de descargar la biblioteca adecuada a continuación, sigue los pasos de configuración para agregar el marco de trabajo a tu proyecto. Los requisitos de configuración son los mismos para XCFrameworks que los marcos de trabajo heredados heredados.
Se proporcionaron bibliotecas sin modo de invitado para situaciones en las que tu app no requiere la función o si no deseas solicitar permisos de Bluetooth®, que se introdujeron en iOS 13. Consulta el documento de cambios de iOS 13 para obtener más información.
Marco universal
Bibliotecas del SDK de remitentes de Cast para iOS 4.7.0:
Estática con el modo de invitado Estática sin modo de invitado
Dinámico con el modo de invitado Dinámico sin modo de invitado
XCFramework (Beta)
A partir de la versión 4.7.1, el SDK de Cast para iOS es compatible con XCFrameworks, lo que permite el desarrollo en computadoras Apple M1 y depuraciones con el simulador de M1 para iOS.
Actualmente, estas bibliotecas están en versión Beta. Notifica cualquier problema que encuentres en la Herramienta de seguimiento de errores del SDK de Cast.
Bibliotecas XCFramework 4.7.1 del SDK de remitentes de iOS para Cast:
XCFramework estático con modo de invitado XCFramework estático sin modo de invitado
XCFramework dinámico con modo de invitado XCFramework dinámico sin modo de invitado
Pasos para la configuración
Para instalar una de las bibliotecas static, haz lo siguiente:
- Descarga y descomprime el SDK estático apropiado para tu proyecto.
- Configura la biblioteca de Protobuf con la versión mínima v3.13.
- Si tu proyecto usa CocoaPods, haz lo siguiente:
-
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, haz lo siguiente:
-
Quita la versión actual de
GoogleCastSDK
, si está presente. - Agrega la biblioteca de Protobuf v3.13 o una versión posterior según las instrucciones que se encuentran en el repositorio de GitHub de Protobuf.
-
Arrastra el archivo
.framework
o.xcframework
descomprimido al proyecto principal en el navegador del proyecto de Xcode (no al proyecto de pods, si tienes uno). Marque la opción "Copiar todos los elementos si es necesario" y agréguelos a todos los objetivos. -
En el 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 “Show In Finder”. -
Arrastra los elementos
GoogleCastCoreResources.bundle
yGoogleCastUIResources.bundle
al proyecto junto a los elementosGoogleCast.framework
oGoogleCast.xcframework
que agregaste anteriormente, 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 de GoogleCastSDK:
- Si tu proyecto usa CocoaPods, haz lo siguiente:
-
Abre tu
Podfile
y quita:pod 'google-cast-sdk'
-
Ejecuta
pod install
en la carpeta raíz de tu proyecto. - Si tu proyecto no usa CocoaPods, quita la biblioteca actual de Google Cast.
-
Arrastra el archivo
.framework
o.xcframework
descomprimido al proyecto principal en el navegador del proyecto de Xcode (no al proyecto de pods, si tienes uno). Marque la opción "Copiar todos los elementos si es necesario" y agréguelos a todos los objetivos. -
En tu destino de Xcode, en la pestaña
General
, seleccionaEmbed and Sign
paraGoogleCast.framework
oGoogleCast.xcframework
.
Configuración de Mac Catalyst
Para 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 marco de trabajo a tu proyecto. Luego, excluye condicionalmente el SDK de Cast del destino de Mac, como se menciona 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 con el destino de Mac.
Cómo publicar tu app en App Store
Antes de publicar la app en App Store, debes ejecutar la secuencia de comandos de shell strip_unused_archs.sh
para quitar las arquitecturas sin usar del paquete de aplicación. Esta secuencia de comandos está en el SDK de Cast para iOS.