Diario del desarrollador de aplicaciones móviles independientes: Parte 3 | Por John | Marzo de 2022
¡Publico mi juego pero nadie lo descarga!
¡Hola! Soy John y esta es la tercera parte de mi diario de mi experiencia independiente en el desarrollo de aplicaciones móviles. Puede leer artículos anteriores aquí: Parte 1, Parte 2.
Cuando nos detuvimos en la última entrada, acababa de poner RetroRocket en prueba abierta en Google Play Store (una especie de estado de prueba beta) y me decepcionó un poco que registró cero descargas totales después de las primeras 24 horas. Esto no es lo que esperaba, por lo que obviamente necesito una verificación de la realidad para obtener usuarios de aplicaciones móviles.
Solo quiero algunos probadores beta
En esta etapa, no estoy demasiado preocupado por conseguir muchos usuarios. En cambio, RetroRocket solo ha sido jugado por un pequeño grupo de mis amigos hasta ahora, y estoy un poco preocupado por exponerlo repentinamente a la gran mayoría de los jugadores de Android. Cuando descubrí que la gran mayoría de los jugadores de Android no lo descargarían espontáneamente, me di cuenta de que debería estar nervioso por lo contrario: hacer que cualquier usuario esté dispuesto a hacer algunas pruebas beta.
Una fuente obvia de algunas descargas y probadores iniciales son las redes sociales. Sin embargo, casi siempre dejo de participar en toda la escena. Facebook, Twitter y otros sitios no me funcionan. Por lo tanto, no puedo aprovechar las redes sociales grandes (o incluso moderadas) para obtener algunas descargas iniciales para probar. Probé algunas publicaciones en Reddit y algunos tweets con lo que podrían parecer hashtags, pero en realidad no obtuve resultados significativos. Probablemente obtuve 5 o 6 descargas de él.
Ya estoy un poco atascado. Después de mucha deliberación, llegué a la conclusión de que, dado que mi aplicación no recibe un éxito repentino de los usuarios, tal vez pueda olvidarme de cualquier otra prueba beta y lanzarla a plena producción. No es ideal, pero ¿qué más puedo hacer?
verificación de la realidad
El hecho inminente en este punto es que casi todos mis usuarios al principio tienen que ser «adquisición de usuarios pagados». Es decir, tengo que anunciar RetroRocket y pagar por clic para obtener una descarga.Si tuviera que empezar a hacer esto, lo haría no Quiere pagar por clic para enviar personas a una aplicación en versión beta abierta. Es genial que Play Store ofrezca este modo, pero si alguna vez lo ha usado, sabe que instalar una aplicación en versión beta abierta no es tan sencillo como instalar una aplicación de producción normal. Eso no está mal, pero si estoy pagando por clic con un presupuesto de marketing frugal, quiero la tasa de conversión más alta posible (el porcentaje de personas que realmente instalan la aplicación después de hacer clic en el anuncio). Sospecho firmemente que las tasas de conversión de las aplicaciones beta abiertas son naturalmente más bajas que las de las aplicaciones de producción regulares.
Entonces, el nuevo plan es completar los preparativos para el lanzamiento real de RetroRocket, y cuando todo esté listo, continuar y lanzarlo sin importar cuántas pruebas beta se realicen. Observaré atentamente a los usuarios que encuentren problemas lo más rápido posible y asumiré que la cantidad de usuarios aumentará lentamente para poder encontrar y solucionar cualquier problema que surja sin mucho impacto. Tener mi propio servidor back-end dedicado ha demostrado ser valioso porque me permite monitorear la experiencia del usuario muy fácilmente y muy de cerca en cualquier forma personalizada que se me ocurra.
Preparar los detalles del producto
Antes de lanzar RetroRocket, mi siguiente gran tarea fue preparar la lista de Google Play Store. Este punto es muy importante. A estas alturas, muchas personas han oído hablar de la optimización de motores de búsqueda («SEO»): el proceso de hacer que un sitio web se destaque tanto como sea posible en los resultados de búsqueda web y una de las tareas de marketing más importantes en la actualidad. Ahora existe un concepto equivalente para las aplicaciones: App Store Optimization o ASO. Si desea que los usuarios descubran y descarguen su aplicación sin pagar por clic, debe ser bueno en ASO.
¿Qué debo hacer para ASO?
ASO tiene dos componentes: búsqueda y transformación.OK búsqueda El rendimiento significa que muchos usuarios encontrarán su lista de aplicaciones cuando naveguen o busquen en Play Store (o incluso en cualquier otro lugar).OK convertir El rendimiento significa que muchos usuarios realmente descargan su aplicación después de encontrar su listado. Estos dos componentes requieren diferentes formas de optimización de listas.
Al igual que el SEO, el buen rendimiento de búsqueda de ASO se reduce a palabras clave. Tienes que hacer una lista de palabras clave populares relevantes para tu aplicación y luego asegurarte de que el título y la descripción de tu listado las usen a fondo (pero no de manera demasiado ridícula). Encontrar palabras clave para RetroRocket es un poco difícil. Se me ocurrieron «nave espacial», «módulo de aterrizaje lunar» y varios otros y escribí mi descripción alrededor de ellos.
Hay otros tres factores que afectan fuertemente el rendimiento de búsqueda de una lista en Google Play Store: calificaciones, descargas y «comportamiento de la aplicación». Mucha gente tiene que descargar su aplicación y luego calificarla altamente.
Mi plan es obtener descargas a través de anuncios pagados, por lo que es fácil pero costoso (más sobre eso más adelante).
Voy a obtener una calificación alta manteniendo los anuncios al mínimo, lo que parece ser la principal queja que mencionan los jugadores cuando califican el juego como bajo. Con suerte, RetroRocket será un juego lo suficientemente divertido como para obtener una calificación alta siempre que no moleste a la gente con muchos anuncios, siempre que el juego no se bloquee o tenga demasiados problemas.
Esto lleva a un tercer factor importante en los resultados de búsqueda de ASO: el comportamiento de la aplicación. Google rastrea los bloqueos de la aplicación y los «ANR» (la aplicación no responde). Si alguno de estos hace demasiado, la aplicación nunca ocupará un lugar destacado en ningún resultado de búsqueda (o no lo hará en absoluto).
Tu aplicación no fallará
Esto es muy importante, y en un ecosistema de dispositivos como Android, no es trivial. Hay miles de dispositivos Android diferentes que ofrecen cantidades masivas de CPU, gráficos y rendimiento de red, cientos de tamaños de pantalla diferentes e incluso toneladas de versiones de sistemas operativos diferentes. Android está diseñado para esto, abstrayendo la mayoría de las variantes y proporcionando mecanismos bien definidos para acomodar el resto.Pero aún debe tener cuidado de no hacer suposiciones sobre el dispositivo: Android logra una independencia total del dispositivo posiblepero definitivamente no obligatorio.
Google Play Console recopila información sobre bloqueos de aplicaciones y ANR y proporciona seguimientos de pila para que se puedan depurar y corregir fácilmente. Es una gran característica, pero también he oído que no es perfecta y puede pasar por alto algunos problemas. Si Google no detecta algunos de los bloqueos de mi aplicación, supongo que no afectará mis búsquedas de ASO, pero podría irritar a mis usuarios y generar calificaciones bajas. Así que decidí integrar Firebase «Crashlytics» en RetroRocket. Esta es una integración muy simple que agrega otro mecanismo para detectar e informar problemas con mi aplicación.
Me preocupa un poco cuánto volumen agregará esto a mi aplicación, y si hay consecuencias en el rendimiento o en el ancho de banda de la red que no me gustan. Pero lo probé, y me sentí bastante bien. Agrega un poco de tamaño y tal vez algo de sobrecarga de red, pero nada se destaca. Así que lo seguí. Los beneficios parecen superar con creces las desventajas, y es fácil eliminarlo más tarde si cambio de opinión.
Rendimiento de conversión de ASO
Como se mencionó anteriormente, otro aspecto de ASO tiene que ver con la transformación. Si alguien mira tu lista de Play Store, ¿descargará tu aplicación? La sabiduría común es que los íconos de aplicaciones, videos y capturas de pantalla son realmente las únicas cosas que importan aquí. Me han dicho que nadie ha leído las descripciones.
Así que ahí es donde entra algo del arte. Es posible que haya mencionado antes que no soy un artista, y eso es muy cierto. Sin embargo, tengo habilidades básicas de Photoshop y Premiere Pro, así que tomé muchas capturas de pantalla y videos de juego de RetroRocket y me puse a trabajar. Se me ocurrió un conjunto de «ideas» (que obviamente es lo que llamarías en la industria del marketing), y no eran geniales, pero probablemente tampoco eran vergonzosamente malas.
Lo subí todo a Google Play Console y mi lista de tiendas está completa. No creo que se vea mal.
tonterías legales
Bueno, los detalles de mi producto son casi completamente. Hoy, Google requiere que todas las aplicaciones tengan una política de privacidad y una declaración de seguridad de datos. Además, la aplicación debe calificarse según la edad. Afortunadamente, ninguna de estas tareas es muy difícil.
Política de privacidad
Para la política de privacidad, utilizo un Generador de políticas de privacidad de aplicaciones Generarlo, es muy fácil. Alojo la política como un documento html en mi servidor backend, coloco el enlace en mi lista y aplicación de Google Play, y listo.
Seguridad de datos
La Declaración de seguridad de datos se completa en forma de cuestionario en Google Play Console. Hace muchas preguntas sobre cuánto y qué tipo de datos de usuario recopila mi aplicación y cómo maneja esos datos. Las preguntas son simples, fáciles de entender y responder correctamente. Soy cuidadoso al responderlas, asegurándome de errar por el lado de una mayor divulgación. No quiero que Google ni nadie más afirme que estoy haciendo algo con mis datos no revelados, lo cual es un gran problema en estos días. Pero en realidad, RetroRocket no recopila mucho, por lo que no hay mucha ambigüedad.
clasificación de edad
Finalmente, el negocio de la clasificación por edades toma la forma de otro cuestionario más corto y muy simple. RetroRocket tiene naves espaciales de dibujos animados explotadas por torretas enemigas, por lo que es «violencia de fantasía leve». Este es el único contenido relevante que apareció en el cuestionario, que le dio al juego una calificación de «Todos».
Sin embargo, completar el cuestionario y obtener una calificación de «Todos» me recuerda dos cosas en RetroRocket que pueden afectar la idoneidad para la edad que el cuestionario no detecta. Primero, la publicidad. RetroRocket muestra anuncios, y he visto algunos anuncios francamente inquietantes mientras jugaba a otros juegos. Supongo que si el juego está calificado como «Todos», será mejor que configure los anuncios en consecuencia. Nadie me dijo que hiciera esto, pero escuché que las aplicaciones se eliminan de Google Play Store por mostrar anuncios que no coinciden con la calificación de la aplicación. Tal vez caiga en la categoría de «sentido común».
Otro problema de clasificación por edad que he visto en RetroRocket es la capacidad de permitir a los usuarios ingresar sus propios nombres de piloto, que luego son visibles para todos en la tabla de clasificación. Exponer la creatividad enfermiza y retorcida de mil jugadores al azar a «todos» no parece correcto.Sin embargo, realmente quería mantener la característica del nombre del piloto, así que registré un programa llamado limpieza de paginas webMe permitió ejecutar los nombres de usuario enviados a través de un algoritmo que intentaba determinar si eran obscenos y funcionó bien. Un desviado decidido hará el truco, pero para eso creo que está bien y no es demasiado caro. Por cierto, esta es otra forma en que mi servidor back-end casero resulta útil, ya que integrar las llamadas de WebPurify en él es pan comido.
Una vez más, nadie me ha dicho que los nombres de usuario proporcionados por los usuarios visibles públicamente deben o deben filtrarse. Me gustaría saber que habrá una insignia de «E-Rated E-Rating para todos» en mi aplicación, y es mi responsabilidad estar a la altura de sus especificaciones y no agitar la mano frente a mí. En general, estoy de acuerdo con esto, pero también creo que Google podría ser más cauteloso al respecto.
lanzamiento a producción
Mi listado de Play Store está completo, mi «papeleo» está completo y mi juego está fuera de la prueba beta. ¡Es hora de ponerlo en producción!
Esta vez, no me hago ilusiones sobre lo que sucederá. Ahora que el lanzamiento de RetroRocket a la versión beta abierta ha causado un silencio tan profundo, lanzarlo a producción ciertamente no será diferente. De hecho, esto es lo que sucedió. Nada, hazlo de nuevo. Pero esta vez lo esperaba. Estoy aprendiendo: ya no soy el desarrollador ingenuo y soñador que era hace dos semanas con el sueño de 10,000 usuarios en mi primer mes; ahora soy un veterano obstinado y cínico que entiende que el mundo no se preocupa por mí o por mi juego, si voy a conseguir usuarios, voy a tener que empujar RetroRocket por sus gargantas.
¡Estén atentos para el progreso en el próximo artículo! gracias por leer.