¿Cómo convive una aplicación de Android y AndroidTV en Google Play?

En este momento estás viendo ¿Cómo convive una aplicación de Android y AndroidTV en Google Play?
logo tyris tech

Autoría:
Alejandro Traver Fos
Android Engineer at Tyris Software

Comparte esta página:

Al ampliar nuestra aplicación dando soporte a AndroidTV, una de las primeras preguntas que surgen es cómo va a convivir nuestra app  con la aplicación de AndroidTV.

Introducción

Si queremos ampliar nuestra aplicación para dar soporte a AndroidTV, el primer paso que debemos dar es introducir en nuestro proyecto LeanBack, la librería de soporte que provee Google para proveer nuestra nueva interfaz.

Debemos tener en cuenta la gran variedad de dispositivos que podemos encontrar en el mercado.

Desgraciadamente algunos dispositivos son demasiado populares entre los consumidores como para no prestarles atención. En este grupo podemos encontrar boxes que se venden como AndroidTV pero que siendo puristas son móviles cuya pantalla ocupa toda la televisión.

Poco después de haber empezado a desarrollar (cuando somos capaces de ver un «Hello World» gigante en nuestra TV de pruebas) y con el roadmap en mente, es importante prestar atención a la pregunta que nos ocupa. Resolverla nos va a permitir hacer foco en la nueva estructura que va a tomar el proyecto.

Dado que no es una decisión que se deba tomar a la ligera, basamos nuestro análisis alrededor de tres puntos: mantenibilidad del proyecto, calidad y ASO (Application Store Optimization).

¿Qué opciones tenemos?

Publicar dos APKs con el mismo applicationId, siendo a efectos prácticos, la misma aplicación en Google Play.

En esta opción configuraremos nuestro proyecto para ser capaces de generar 2 aplicaciones diferentes: TV y mobile. Deberemos configurar el AndroidManifest de cada una de las compilaciones. Aquí el riesgo radica en que la configuración del manifest puede dejar un subconjunto de dispositivos que encaje en ambas configuraciones, por lo que la store puede mostrar la aplicación al cliente que no deseamos. Por tanto, delegamos la responsabilidad de la segmentación en la Play Store. Hablando de expectativa del usuario, puede traducirse en clientes no satisfechos.

Como el universo de los dispositivos es tan entrópico, siendo una opción que nos resta control sobre el producto, es la única opción que descartamos por completo.

Subir una único aplicación (un sólo APK) con dos puntos de entrada diferentes

Esta es la opción que recomienda la documentación de Google. Se configuran dos puntos de entrada diferentes a la app (una Actividad para TV y otra para mobile). El inconveniente es, como en el caso anterior, que tenemos dispositivos que se comportarán como móviles y no ejecutarán la app de tv correctamente,. Las releases en esta aproximación son las mismas para Android y AndroidTV (a no ser que se implemente un mecanismo para que no sea así).

Las features se publican a la vez tanto para Android y AndroidTV, por lo que si se desea realizar primero la publicación en una plataforma y luego en la otra se debe implementar ad hoc. Esta configuración la podemos encontrar, por ejemplo en Red Bull TV.

Publicar dos aplicaciones diferentes

La app de mobile y tv son compilaciones diferentes, por lo que tendrán applicationId diferentes. Tenemos una aplicación por un lado puramente para móvil / tablet y otra para AndroidTV, por lo que si un usuario está viendo la Play Store en un TVBox que ejecuta Android estará viendo la app de mobile. Ante una posible queja de un cliente que ve mal nuestra app tenemos una respuesta clara en firme: «Si no ves en el market la app de TV, simplemente no te garantizo que funcione correctamente».

Además, presenta algunas ventajas adicionales como separar métricas de los usuarios más fácilmente o abordar crashes, ya que está más acotado el escenario. También presenta la ventaja de que las compilaciones de una y otra aplicación son más ligeras que, junto a otros mecanismo como App Bundle o imágenes en webp, pueden dejar un peso del instalable en unos valores muy razonables.

Como no todo es gratis, deberemos pagar el «precio», ya que si tenemos una aplicación con cierto recorrido, al crear una nueva aplicación, no podremos aprovechar la dinámica de aquella. Los comentarios, valoraciones y posición en la store no nos podrán ayudar a promocionar nuestra nueva app de AndroidTV. A pesar de los inconvenientes, es la aproximación utilizada por Netflix, uno de los referentes en cuanto a reproducción en streaming.

¿Cuál es la mejor solución?

Si deseamos potenciar el posicionamiento quizás valoremos la opción 2, asumiendo los riesgos que ello conlleva; en caso contrario optaríamos por la 3. Aún así es importante entender a nuestros usuarios y sus expectativas. Por tanto hay que valorar si el posicionamiento compensa el riesgo. Sobretodo por que si el usuario escribe el nombre de la aplicación en la store de TV lo va a encontrar igualmente.

Separar nuestra aplicación de AndroidTV en una app diferenciada penalizará nuestro ASO (App Store Optimization), sin embargo a medio/largo plazo lo agradezcamos gracias a la mantenibilidad que hemos ganado.

En Tyris Software recomendamos a nuestros clientes la tercera opción, superponiendo la calidad al resto de aspectos del producto.

 Separar nuestra aplicación de AndroidTV en una app diferenciada penalizará nuestro ASO (App Store Optimization), sin embargo a medio/largo plazo lo agradezcamos gracias a la mantenibilidad que hemos ganado.

logo tyris tech

Autoría:
Alejandro Traver Fos
Android Engineer at Tyris Software

Comparte esta página:

  • Autor de la entrada: