Lista de "tareas pendientes" antes de publicar la aplicación de Android en el mercado [cerrado]

317

Estoy a punto de publicar mi primera aplicación en el mercado de Android, y me gustaría saber si alguno de ustedes tiene algún consejo sobre las experiencias que puedan haber encontrado con respecto a la publicación de una aplicación que va más allá de lo obvio documentado

¿Alguna advertencia o idea oculta sobre qué hacer antes de publicar una aplicación en el mercado? Por ejemplo, un amigo mío me recomendó que elimine todos y cada uno de los comentarios de mi código en caso de que alguien acceda al código fuente, lo que hace que sea más difícil para el posible "code jacker" descifrar el código. Pensé que era una sugerencia sensata.

¿Cuáles son todas las cosas que hacer antes de publicar su aplicación en el mercado de Android?

dell116
fuente
1
Se acaba de publicar una lista de verificación en la documentación oficial para garantizar que cumpla con las expectativas básicas de los usuarios de tabletas.
Jeff Axelrod
48
Extraño, no es constructivo y obtuvo 16K vistas jajaja
require_once
61
Cerrar una pregunta tan constructiva como "no constructiva" es un claro ejemplo de por qué debería cambiarse la política de moderación de Stackoverflow.
Orion
77
Debe asegurarse de que su aplicación tenga muchas palabras clave y hacer una investigación de palabras clave antes de publicarla. Vea cómo utilicé la herramienta de tendencias de Google para la investigación de palabras clave
NabeelSaleem
2
Revisa la política de desarrolladores de Google Play y asegúrate de que tu aplicación no esté violando nada, debes tener mucho cuidado con Google, duele mucho cuando estás en la nube 9 con 2 millones de descargas y de repente tu aplicación se suspende porque no pasaste por su política.
Yauraw Gadav

Respuestas:

339

Espero que no sea demasiado tarde, aquí hay algunos consejos:

  • Inicie su aplicación al final de la semana (el jueves por la tarde suele ser un buen momento). ¿Porque? Bueno, a ninguna compañía le gustaría publicar una aplicación solo 1.5 días antes del fin de semana -> demasiado peligroso (en caso de que haya un problema que necesite un tiempo de reacción rápido).

  • Use proguard en su aplicación (generalmente, solo tiene que agregar esta línea: proguard.config=proguard.cfgen el default.propertiesarchivo). Esto optimizará, reducirá y ofuscará su código, muy útil para evitar que los ladrones de códigos. No tiene que eliminar ningún comentario, se eliminan automáticamente en el momento de la compilación.

  • Optimice sus imágenes (usando Paint.NET , PNGCrush u OptiPNG ).

  • Optimice sus diseños para la mayoría de los tamaños de pantalla. Puede hacerlo simplemente cambiando el tamaño de la pantalla mientras edita un diseño en AndroidStudio o Eclipse.

  • Intente / detecte todas las excepciones en la interfaz de usuario y muestre un simple brindis que indique al usuario que sucedió algo incorrecto. Mientras tanto, recupere el error con Crashlytics o algo similar.

  • No use demasiadas bibliotecas .jar, prefiera proyectos de biblioteca (optimice el tamaño del código) y agréguelos usando gradle.

  • Prefiere usar imágenes vectoriales, ya que reducirá el tamaño del APK y se ajustará correctamente en todos los dispositivos.

  • No use las ventanas de preferencias de Android -> eso no es realmente hermoso, incluso si está en las pautas de Android, prefiera hacer su propia página de configuración. Pero si mantiene las preferencias de Android: considere agregar íconos y colores.

  • No muestre el título de su aplicación en la pantalla principal ( this.requestWindowFeature(Window.FEATURE_NO_TITLE);): las buenas marcas no necesitan ocupar tanto espacio en una pantalla para ser reconocidas (muestre algún ícono o título en el menú o en algún lugar que no siempre sea visible) y considere usar el modo de pantalla completa ( this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);) cuando trabaje con juegos y contenido muy envolvente.

  • Use Google Analytics , Fabric Answers o Flurry para futuras analíticas -> intente obtener la mayor cantidad de información posible, pero no tome nada que viole la identidad anónima del cliente. No olvide recuperar las excepciones (errores y seguimientos de pila) que ocurren en el lado del usuario.

  • Pídale a sus amigos que hagan pruebas de mono, aprender de los usuarios generalmente trae muchas cosas buenas (como prioridades y nuevas ideas).

  • Considere publicar su aplicación antes de haber terminado todas las funciones (función más importante solamente), ya no sabe qué querrán o necesitarán sus usuarios además de su función principal.

  • Agregue una sección "Más aplicaciones" o "Más del desarrollador" en su aplicación, eso es publicidad gratuita.

  • Agregue una sección "Enviar comentarios" para dar al usuario la posibilidad de solicitar una nueva función o informar algún error.

  • Pida a sus usuarios que traduzcan su aplicación proporcionando strings.xml en algún lugar de la web como Crowdin .

  • Pruebe su aplicación en cada versión de Android con el emulador -> se detectarán muchos errores o problemas de diseño de esta manera. Para esto, puede usar el emulador provisto, o usar Genymotion en su lugar (Genymotion tiene muchas características muy útiles).

  • Piense en el nombre de la aplicación -> ¿qué palabras clave usaría para buscar su aplicación? Estas palabras clave deben ser el nombre de su aplicación (Google lo ayudará a ser descubierto de esta manera).

  • Considere incluir palabras clave en la descripción de la aplicación, pero de manera descriptiva (haga oraciones comprensibles usando sus palabras clave). Nunca agregue una lista de palabras clave como está en la descripción.

  • Sé el primero en calificar tu aplicación con 5 estrellas y pide a tu familia y amigos que hagan lo mismo -> esto probablemente influirá en las calificaciones de los futuros usuarios.

  • Considere usar Google para traducir su aplicación, ya sea para la descripción, ya sea para strings.xml o ambas.

  • Considere mostrar anuncios en sus aplicaciones y utilice la mediación para mejorar sus ingresos de AdMob .

  • En lugar de proporcionar una versión paga, considere realizar la facturación en la aplicación: es más probable que los usuarios paguen en la aplicación en lugar de pagar por una versión paga.

  • Agregue un registro de cambios en la aplicación -> a los usuarios generalmente les gusta saber qué ha cambiado desde la última versión.

  • Agregue una sección de "Gracias" para los usuarios que lo ayudaron -> esto atraerá a los usuarios a su producto.

  • Agregue un enlace "Si le gusta esta aplicación, califíquela" (a su descripción de Google Play) en su aplicación -> obtendrá más 5 estrellas (generalmente una ventana emergente al inicio o después de una acción de función).

  • Considere explicar su producto a través de una sección de "Consejos" o "Instrucciones" en su aplicación.

  • Guarde su almacén de claves e información de credenciales en un lugar seguro. No podrá publicar una actualización para su aplicación si pierde su almacén de claves.

  • Haga que su icono sea realmente simple y claro. El ícono es el primero y también principalmente lo último que hará que el usuario descargue su aplicación.

  • A menos que no sea posible, prefiera la instalación externa ( android:installLocation="preferExternal"en AndroidManifest.xml).

  • Lea los consejos y las publicaciones de blog de AppAnnie , le dará pistas sobre cómo mejorar ASO y lo ayudará a comprender mejor a sus usuarios.

Mathieu de Brito
fuente
2
si tiene problemas con la prueba en diferentes emuladores en eclipse, puede obtener el emulador genymotion, eso es más rápido.También para optimizar las imágenes png www.tinypng.com es una buena opción
Arash
2
Realmente útil, pero tenga en cuenta que, para proporcionar una experiencia UX adecuada, es mejor que tenga razones válidas para pasar a pantalla completa. Por ejemplo, si desea que el usuario se centre en un solo elemento y elimine todas las demás distracciones en el camino.
whizzkid
1
applicationIdno se pudo restablecer una vez que publique su aplicación. Muchas veces contiene palabras (como su nombre de usuario) que no desea revelar. Configúrelo en el build.gradlearchivo de su proyecto en Android Studio.
gsinha
77
Vengo a StackOverflow para obtener respuestas a las preguntas. Mi pregunta era "¿Qué debo hacer antes de publicar una aplicación de Android?" Esta es una respuesta muy útil e imagino que podría haber muchas otras, por lo que cerrar la pregunta como "No constructivo" no parece muy constructivo.
user872985
2
Gracias por los consejos. Quiero saber una cosa más. Si alguien abre mi aplicación en Play Store, quiero mostrar mis aplicaciones como sugerencia, como "Más del desarrollador". ¿Hay alguna forma de hacerlo
Geethu
47

Realmente, no te molestes en eliminar los comentarios del código. Su código fuente no llega al teléfono del usuario; solo llega el código compilado, y eso no contiene ninguna referencia a sus comentarios.

Los usuarios de Android tienden a apreciar que las aplicaciones son lo más pequeñas posible, por lo tanto, verifique que solo incluya recursos (imágenes, etc.) que todavía se están utilizando en su aplicación. Use OptiPNG / PNGCrush en cualquier imagen .png que tenga en su aplicación, que puede reducir el tamaño de los archivos de imagen en aproximadamente un 10%, lo que puede ser una parte significativa del tamaño general de su aplicación.

Además, use un editor de audio como Audacity para reducir el tamaño de cualquier audio tanto como sea posible. Optar por archivos mono OGG Vorbis suele ser lo mejor, y suena lo suficientemente bueno en un teléfono.

teedyay
fuente
1
Si mi memoria me sirve correctamente, pensé que leí en alguna parte que cuando se empaqueta .apk, el código no se compila. He asumido que .apk contiene todos los archivos de origen, como vería si fuera a la carpeta del espacio de trabajo del proyecto para Eclipse ..... y Dalvik compila el código sobre la marcha cuando se ejecuta en el telefono ?? Espero estar completamente equivocado, porque incluso cuando estaba leyendo el artículo, me decía: "bueno, eso no es seguro". También soy miembro de xda-developers.com, y parecen estar publicando archivos apk desodexados para aplicaciones todo el tiempo.
dell116
16
No, la fuente sin procesar no se envía. El archivo .apk es solo un archivo .zip disfrazado, así que cámbiele el nombre y eche un vistazo. Cualquier cosa en / assets y / res / raw se envía sin modificaciones, al igual que los elementos extraíbles en / res. Los archivos xml en / res están maltratados de alguna manera (¿tal vez alguien más aquí sabe si están encriptados o simplemente comprimidos?). Su código fuente se compila en classes.dex. Si abre eso en el Bloc de notas, encontrará que contiene muchas cadenas de su código fuente (nombres de métodos y variables, etc.) pero ninguno de sus comentarios.
teedyay
77
Los archivos xml se compilan para optimizar su análisis y navegación. Hay herramientas para descompilarlos.
piedras grandes
@bigstones ¿De qué tipo de programas de compilación estamos hablando aquí?
Robert Massaioli
@RobertMassaioli Solo AAPT, se realiza automáticamente en el momento de la compilación.
bigstones
36

No te preocupes por los comentarios. Sin embargo, si le preocupa la disección maliciosa de su aplicación, HAGA ejecutarla a través de un ofuscador como ProGuard.

Otros consejos que ofrecería:

  • Tenga todos sus gráficos y materiales promocionales listos para adelantar.
  • Planifique su lanzamiento estratégicamente para cuando no tenga mucho más en su vida (como justo antes de un fin de semana) para que tenga tiempo de responder RÁPIDO si el primer puñado de usuarios comienza a tener problemas. Las calificaciones bajas desde el principio pueden matarlo, pero la respuesta y las correcciones rápidas por correo electrónico pueden canjear totalmente la opinión de un cliente sobre su aplicación.
  • Estoy de acuerdo con los comentarios anteriores sobre la reducción de los tamaños de imagen tanto como sea posible.
  • Obtenga su código en el control de origen si aún no lo está. Seguro que necesitará emitir actualizaciones y correcciones en algún momento, y el control de fuente puede jugar un papel importante en eso.
Blumer
fuente
44
¡+1 por lanzar cuando tengas tiempo para arreglar las cosas rápidamente!
teedyay
Gracias por su respuesta. Estoy seguro de que otros también estarán agradecidos. Estoy usando Eclipse Galileo para hacer mi aplicación, y otro hilo en SO dice que Subversive for Eclipse es una de las herramientas de control de fuente más fáciles de acostumbrar. En esa nota, el sitio web de Eclipse tiene una versión de Subversive para descargar, pero solo veo un enlace para una versión de Helios. ¿Usted o alguien más sabe si este complemento funciona con Galileo?
dell116
No lo sé, en realidad. Hago mi control de versiones no integrado con Eclipse porque no me he molestado en configurarlo. Uso TortoiseSVN cuando estoy en Windows y las herramientas de línea de comando de Subversion cuando estoy en mi caja de Linux.
Blumer
Hablando de actualizaciones, ¿es tan simple como volver a empaquetar la aplicación con los archivos actualizados y reemplazar el .apk más antiguo en el mercado con uno nuevo que tenga un número de versión diferente? Recuerdo haber intentado reinstalar mi aplicación sobre una instalación preexistente (sin desinstalar la aplicación para intentar simular una "actualización"), pero falló, lo que me hizo pensar que esto podría suceder cuando publico una actualización . Pero, en aras de la discusión, la "actualización" .apk que instalé encima de mi instalación anterior no tenía un número de versión diferente en el manifiesto. ¡Gracias de nuevo por cualquier consejo!
dell116
1
Cuando vaya a cargar su nuevo .apk al Market, lo comprobará para asegurarse de que el número de versión haya aumentado desde la última vez. Al instalar una actualización en un dispositivo, creo que NO verifica los números de versión, sino que instala lo que usted le dice. Sin embargo, sé que la instalación de un .apk actualizado fallará si las claves con las que se firmaron la versión anterior y la nueva no son las mismas. Primero deberá desinstalar el antiguo y luego instalar la actualización.
Blumer
32

No estoy seguro de si has visto esto antes, pero deberías ejercitar tu interfaz de usuario con el mono : mi aplicación solo ha tenido un bloqueo, pero no habría tenido ninguno de esos si la hubiera probado con Monkey primero.

RivieraKid
fuente
18

Agregaré una obvia, pero importante: guarde su clave de firma en un lugar seguro y haga una copia de seguridad. Si está permitiendo que Eclipse gestione esto por usted, preste atención a dónde crea su almacén de claves y guarde una copia de seguridad del mismo. Y no olvide las contraseñas para el almacén de claves o las claves de firma individuales.

Por qué: debe firmar las actualizaciones de su aplicación con el mismo certificado que utilizó para firmar el original. Si pierde ese certificado (o pierde acceso a él), no puede actualizar su aplicación. Tendrás que crear una nueva lista en el mercado de Android.

zlovelady
fuente
1
Casi pierdo mi llave haciendo una restauración de computadora ... ¡Por suerte, tenía una copia de seguridad!
Ruchir Baronia
17

Algunos puntos que tiendo a olvidar:

  • revisa tu minSdkVersionen el manifiesto
  • prueba tu aplicación en un emulador con tu minSdkVersion
  • deja que tus amigos prueben tu aplicación para ver si se explica por sí misma

Si va a proporcionar actualizaciones en su aplicación:

  • es posible que desee agregar algún tipo de diálogo "Qué hay de nuevo en esta versión"
  • copia de seguridad de su versión anterior!
  • no te olvides de aumentar versionCodey versionNameen tu manifiesto
Maaalte
fuente
66
Puntos positivos, y en la misma línea de pensamiento, si su aplicación usa una base de datos SQLite, asegúrese de que los procedimientos de creación y actualización de su tabla estén en buen estado de funcionamiento.
Blumer
13

No olvide hacer debuggable = false en su manifiesto. Eso me sorprendió un par de veces.

No estoy totalmente seguro, pero creo que esto incluiría mucha información que facilitaría un poco la vida de los piratas informáticos.

Recuerdo que hace años eliminé accidentalmente la fuente de un proyecto de Java, ¡con horror me di cuenta de que no tenía respaldo! Utilicé una utilidad llamada jad para descompilar el archivo jar en el servidor de producción, tenía todas las variables intactas y era casi perfecto. No recuerdo si los comentarios estaban allí o no, pero de todos modos no puse muchos comentarios en ellos :) Esto se debe a que estaba incluyendo símbolos al compilar.

Kevin
fuente
2
android: el valor predeterminado depurable es falso según Google developer.android.com/guide/topics/manifest/… . Busque en el texto "android: debuggable".
El Android original
11

Además de las excelentes sugerencias anteriores, piense en usar Flurry para análisis de dispositivos móviles. No sabía sobre eso cuando comencé a lanzar mis aplicaciones, pero ahora que las actualicé para incluirlas, me encanta ver lo que los usuarios realmente están haciendo con la aplicación. Esto puede proporcionar comentarios valiosos y orientación sobre cosas que pueden ser difíciles de encontrar para los usuarios o que no son interesantes / útiles para el usuario.

Rico
fuente
8

Hasta donde yo sé, los comentarios no están incluidos en la aplicación de ninguna forma.

El único "problema" para un desarrollador que encontré durante el envío de la aplicación fueron los diversos gráficos que puede proporcionar al mercado. Esté preparado para tomar varias capturas de pantalla y crear varios tamaños de íconos de aplicaciones, así como gráficos promocionales.

En el lado positivo, prepárese para que su aplicación aparezca instantáneamente en la tienda: no hay un proceso de aprobación para las aplicaciones de Android Market.

Matthew Willis
fuente
7

También me aseguraría de que tuvieras algún tipo de informe de errores para que sepas cuántos usuarios están encontrando errores. Es posible que desee conservar una copia de su versión anterior al actualizar su aplicación en caso de que necesite retroceder. También es bueno compilar una lista de verificación específica para su aplicación que puede revisar cada vez.

Además, para agregar a esto, es posible que desee utilizar un recortador para extraer piezas de código que no se utilizan para reducir el tamaño general del archivo (ya que el espacio del teléfono es bastante limitado). También es posible que desee ofuscar su código para una protección adicional.

ninjasense
fuente