Sugerencia rápida para el SDK de iOS habilitar las aplicaciones de AirPlay para iOS 4.3

Una de las características más impresionantes lanzadas con iOS 4.3 es el soporte oficial de SDK para la integración de AirPlay. ¡Con solo unas pocas líneas de código, cualquier aplicación de iOS ahora puede transmitir video directamente a un AppleTV! AirPlay también funcionará con otros dispositivos Apple compatibles, como AirPort Express. Sigue leyendo para saber cómo integrar AirPlay en tus aplicaciones.!

En un tutorial anterior, demostré cómo reproducir video en iOS4 con MediaPlayer Framework. Este tutorial ampliará la aplicación Big Buck Bunny para iOS creada en ese tutorial al incorporar la nueva funcionalidad AirPlay que se ofrece en SDK 4.3..


Paso 1: Habilitar Airplay

Habilitando AirPlay en cualquier MPMoviePlayerController El objeto es simple:

 [moviePlayerController setAllowsAirPlay: YES];

Configurando el permite la reproducción aérea la propiedad de SÍ hará que aparezca un icono adicional junto a los controles del reproductor de películas que iniciarán la reproducción de AirPlay. Desafortunadamente, los desarrolladores no tienen control directo sobre esta función, y deben depender del funcionamiento predeterminado de este control..

Después de habilitar AirPlay, los controles del reproductor de video Big Buck Bunny deberían verse así:

Después de comenzar a transmitir a un dispositivo AirPlay, la pantalla de Big Buck Bunny mostrará automáticamente un mensaje notificando al usuario:

Por supuesto, también podría haber configurado el permite la reproducción aérea valor mediante notación de puntos:

 moviePlayerController.allowsAirPlay = YES;

Paso 2: hacer que AirPlay sea compatible con versiones anteriores

Ejecutar la línea de código del Paso 1 en versiones anteriores de iOS que no son compatibles con permite la reproducción aérea La propiedad resultará en una excepción en tiempo de ejecución que bloqueará su aplicación. Para ofrecer AirPlay solo a aquellos dispositivos que lo admiten, debemos colocar un condicional alrededor de la declaración que verificará si el MPMoviePlayerController objeto soporta el permite la reproducción aérea opción.

Para ello, actualice el código para utilizar el respondsToSelector: método:

 if ([moviePlayerController respondeToSelector: @selector (setAllowsAirPlay :)]) [moviePlayerController setAllowsAirPlay: YES]; 

El fragmento de código anterior habilitará AirPlay cuando sea compatible y simplemente omitirá el bloque de código en dispositivos no compatibles.


consideraciones adicionales

Hay algunas cosas que debe tener en cuenta al implementar AirPlay en sus proyectos:

1. AirPlay no es compatible con dispositivos antiguos.

Desesperación de los usuarios de iPhone 3G: no AirPlay para ti. Apple tiene la costumbre de hacer que las nuevas características de SDK y iOS solo estén disponibles en los dispositivos más recientes, y esto es así con la adición de AirPlay al SDK 4.3..

Los problemas de soporte no se limitan solo a dispositivos iPhone más antiguos, tampoco. También se rumorea que las versiones anteriores de AppleTV no son compatibles con las nuevas funciones de AirPlay.

2. Los usuarios deben actualizar AppleTV y el software iOS

Al iniciar una aplicación habilitada para AirPlay, tenga en cuenta que los usuarios deberán tener una versión reciente de iOS en su dispositivo y una versión actualizada del software AppleTV. Su aplicación puede estar funcionando perfectamente, pero una versión anterior del sistema operativo que se ejecuta en un Apple TV todavía puede robar la alegría de su usuario.

3. Los usuarios deben compartir la red con dispositivos AirPlay

Para que iOS pueda encontrar otros dispositivos habilitados para Apple AirPlay, deberá unirse a la misma red WiFi a la que están conectados los dispositivos AirPlay. Una conexión Edge / 3G sin una señal inalámbrica no es suficiente!