Hace unas semanas fui testigo y parte de un fenómeno bastante interesante: la frustración existente al intentar compartir con el mundo el trabajo que has venido realizando durante ya bastante tiempo.

Es algo a lo que he denominado: El Efecto Google Play.

Sé lo que estás pensando: no hay nada más fácil que subir una aplicación…. y… en parte tienes razón. Sin embargo voy a hablar por aquellas almas desorientadas (como yo hace unos días) que no tienen una idea clara del proceso.

Para ejemplificar el proceso, les voy a contar una historia, mi historia. Es algo que mirando hacia atrás me da mucha vergüenza, pero el objetivo es que nadie más pase por la misma experiencia de estar una semana maldiciendo a todos los dioses posibles, con la frustración a flor de piel y sin saber muy bien que hacer pues… no existe mucha documentación al respecto.

Dicho esto, empecemos:

Era yo un joven programador trabajando para una empresa estatal de mi querido país. Me habían contratado para construir una aplicación móvil, con cierto conocimiento previo y otro poco adquirido en el proceso, escribí el código lo más limpio y pulcro que pude y entregué a producción el apk final. Inicialmente el despliegue se realizaba a través de un ftp. Todos descargaban la app a través de un URL y por un tiempo todos fueron felices…

Un día se me ocurrió decir que el proceso de despliegue era extremadamente lento, y que deberíamos usar los canales oficiales para distribuir la aplicación, entiéndase “Google Play”. En ese momento empezaron mis problemas, yo había construido muchas aplicaciones antes de esa, sin embargo siempre me ayudaron con el proceso de subida y hay un par de cosas que tienes que saber mi querido saltamontes, antes de dar el paso a “La tienda”. A estas cosas las he categorizado y enlistado para tu mejor comprensión y son las siguientes:

El nombre del paquete

Cuando creas tu aplicación, esta genera una suerte de arquitectura de ficheros a la que tú, como usuario principiante aceptarás cual dogma doctrinario porque… realmente no sabes qué está sucediendo por detrás, ese fue mi primer error.

Resulta que Android Studio genera un paquete llamado:
com.example.{tu nombre de usuario}.{el nombre de tu aplicación}

Esto, en mi caso, se veía algo así:
com.example.jsaavedra.build7

La aplicación funcionaba sin problemas, era una obra de arte acorde a las críticas de mis superiores y yo estaba muy contento con ella. Así que busqué un tutorial básico para subirla a la tienda y… ERROR.

Resulta que los paquetes “example” están baneados de la tienda de Google Play. Esto es porque el momento de crear el link de acceso a tu aplicación,Google lo crea en función del package name de tu proyecto. Por lo tanto, si tenemos quemada una de las rutas, pues simplemente no va a funcionar.

Ahora, realmente quisiera que Android Studio provea un mejor manejo de nombres de paquetes porque lo que te voy a explicar a continuación es un gran dolor de cabeza para los programadores nuevos. Para corregir este inconveniente, se deben seguir los siguientes pasos:

Renombrar el paquete

En tu carpeta “java”, encontrarás la extensión de tu paquete a cambiar. aquí debes hacer un refactor del paquete y cambiar ese odioso “example” por algo más profesional

Este mismo proceso, debe ser replicado en el tu archivo gradle y en el android manifest

Una vez realizado este cambio, debes cambiar a dónde apuntan las clases de tu paquete, ya que este proceso no es automático en Android Studio

Probablemente te encuentres con este mensaje, en él se detallan todas las clases que debes redireccionar al nuevo paquete para que tu aplicación funcione.

 

Los logs

La tienda de Google no te permite subir un archivo que tenga “comentarios” en tus logs, asegúrate de que todos tus logs estén comentados o borrados antes de intentar subir tu aplicación a producción.

 

En conclusión

Con las debidas precauciones, subir tu aplicación a Google Play no tiene por qué ser un problema, espero que este mini tutorial te sea de ayuda para cuando subas tu app y no tengas que (como yo), pasar horas y horas buscando la solución a un inconveniente tan simple.

 

Muchas gracias por llegar hasta aquí. Te veo la próxima semana.

 

console.log('android')