android-youtube-player, una alternativa de código abierto a la API oficial de YouTube Player

una breve introducción a la API de Android-youtube-player y por qué es posible que desee usarla como reemplazo de la API oficial de YouTube Android Player

Está creando su nueva aplicación de Android y desea permitir que sus usuarios vean videos de YouTube en ella. Lo primero que puede pensar es utilizar la API oficial de YouTube Android Player. Esta no es necesariamente la mejor opción. Con esta publicación, presentaré un reproductor de YouTube alternativo de código abierto que he creado (android-youtube-player), explicando algunos de los beneficios que puede obtener al usarlo en lugar del reproductor oficial.

¿Por qué debería considerar no usar la biblioteca oficial de YouTube?

Si te preocupa la estabilidad

A partir de hoy (25/12/2017), la Player API oficial no es excelente. Probablemente estará bien si necesita usar el
YouTubeBaseActivity / YouTubeStandalonePlayer, pero tendrá problemas con el YouTubePlayerFragment.

La biblioteca tiene algunos errores muy antiguos, este es el más significativo que he encontrado. Mientras desarrollaba mi aplicación, seguí encontrándola, viendo que mi aplicación se bloqueaba al azar aparentemente sin razón alguna. Hizo que mi aplicación fuera inestable y nunca estuviera lista para la producción.
El error sigue ahí, hasta donde yo sé. Una nueva versión de la biblioteca debería estar en proceso, pero aún no se ha lanzado.

Si no quieres estar vinculado a Google Play y a la aplicación de YouTube

Para ejecutarse, la Player API oficial necesita que el dispositivo del usuario tenga instalados Google Play y la aplicación YouTube.

Esta es una limitación que la API de Android-youtube-player no tiene.

Si quieres tener más control sobre el aspecto y el comportamiento del jugador

La Player API oficial no es de código abierto, por lo tanto, la personalización que puede hacer va tan lejos como la API lo permite. Lamentablemente esto significa: no muy lejos.

Quizás desee cambiar la interfaz de usuario del reproductor o escribir algún comportamiento personalizado específico para su caso de uso. Eso no es posible con el jugador oficial.

Si no desea registrar su aplicación en la Consola de desarrolladores de Google

... Eso es un poco vago, pero la API de Android-youtube-player no requiere que hagas eso.

Entre todos estos, la mayor preocupación que tuve fue con la estabilidad de la biblioteca. Algún día Google probablemente lanzará una nueva versión, resolviendo el problema, pero eso aún no ha sucedido (desde 2013: |). Si, como yo, necesita lanzar su aplicación, probablemente necesite una solución más inmediata.

La alternativa: android-youtube-player API

La API de Android-youtube-player proporciona una vista simple que se puede integrar fácilmente en cada actividad y fragmento.

Bajo el capó, la biblioteca interactúa con YouTube a través de la API de IFrame Player, que se ejecuta en un WebView.

Si desea utilizar la interfaz de usuario web del reproductor web, puede hacerlo. Pero también puede usar la interfaz de usuario nativa personalizable proporcionada por la biblioteca. Incluso puede crear su propia interfaz de usuario personalizada desde cero.

Dado que la API utiliza la API oficial de IFrame Player para acceder a YouTube, no existen problemas con las infracciones de los términos de servicio.

Facilidad de uso

android-youtube-player no requiere que sus usuarios extiendan actividades o fragmentos molestos, es solo una vista. Puedes soltarlo donde quieras.

IU personalizable

android-youtube-player ofrece mucha libertad en términos de personalización de la interfaz de usuario. Si lo desea, puede reemplazar completamente la interfaz de usuario del jugador con la suya.

O puede agregar / eliminar fácilmente Vistas de la IU predeterminada.

Soporte de Chromecast

A partir de la versión 8, la API de Android-youtube-player también se puede usar para transmitir videos desde una aplicación de Android a un dispositivo Google Cast.

Inicio rápido: use la biblioteca con solo unas pocas líneas de código

Ahora voy a mostrar un ejemplo simple de cómo comenzar a usar la biblioteca, con solo unas pocas líneas de código.

El código fuente de algunos otros ejemplos está disponible aquí, en la aplicación de muestra. También puede descargar la aplicación de muestra apk y probarla en su teléfono.

Primeros pasos

Para usar la API, comience importando la dependencia de la biblioteca, agregando esta línea a su build.gradle de nivel de módulo.

(reemplace "last_version" con el número real de la última versión de la biblioteca. Las versiones publicadas se pueden encontrar aquí)

Para comenzar a usar el reproductor, debe agregar unYouTubePlayerView a su diseño. También puede crearlo mediante programación, si lo prefiere.

En su Actividad / Fragmento, obtenga referencia al YouTubePlayerView en su código y agréguelo como observador del ciclo de vida de su padre.

Debe usar androidx en lugar de las antiguas bibliotecas de soporte, de lo contrario puede encontrar problemas de compatibilidad en este paso.

Esto es todo lo que necesitas para comenzar a reproducir videos de YouTube en tu aplicación.

Si desea más control, todo se puede hacer mediante programación obteniendo una referencia a su YouTubePlayerView y agregando un YouTubePlayerListener.

No hay una manera más fácil de reproducir videos de YouTube en Android.

Próximos pasos

  1. Visita la página de inicio del proyecto.
  2. Lea la documentación de la API.
  3. Deja una estrella en GitHub :)

¿Dónde me puedes encontrar?

Sígueme en Twitter: https://twitter.com/psoffritti
Mi sitio web / cartera: pierfrancescosoffritti.com
Mi cuenta de GitHub: https://github.com/PierfrancescoSoffritti
Mi cuenta de LinkedIn: linkedin.com/in/pierfrancescosoffritti/en