Google se compromete a impulsar la igualdad racial para las comunidades afrodescendientes. Obtén información al respecto.

Cómo preparar el lanzamiento

A fin de preparar tu aplicación para el lanzamiento, debes configurar, compilar y probar una versión de lanzamiento. Las tareas de configuración son claras y directas, e involucran la limpieza y modificación básicas de código que ayudan a optimizar tu aplicación. El proceso de compilación es similar al de depuración de compilación y puede realizarse con herramientas del JDK y el SDK de Android. Las tareas de prueba sirven a modo de comprobación final y garantizan que el rendimiento de la aplicación sea el que se espera en condiciones reales. Cuando terminas de preparar tu aplicación para el lanzamiento, tienes un archivo APK firmado que puedes distribuir directamente a los usuarios o a través de una tienda de aplicaciones como Google Play.

En este documento, se resumen las tareas principales que debes realizar a fin de preparar tu aplicación para el lanzamiento. Las tareas que se describen aquí se aplican a todas las aplicaciones de Android, sin importar cómo se lancen o distribuyan a los usuarios. Si deseas lanzar tu aplicación mediante Google Play, asegúrate de leer la lista de tareas de lanzamiento de Google Play.

Nota: Como práctica recomendada, tu app debe cumplir con todos tus criterios de lanzamiento relacionados con la funcionalidad, el rendimiento y la estabilidad antes de realizar las tareas que se describen en este documento.

Se muestra la manera en que el proceso de preparación se adecua al proceso de desarrollo

Figura 1: El proceso de preparación para el lanzamiento es una tarea de desarrollo obligatoria y es el primer paso del proceso de publicación.

Introducción

A fin de que tu aplicación esté disponible para los usuarios, debes crear un paquete listo para el lanzamiento que se pueda instalar y ejecutar en sus dispositivos Android. El paquete listo para el lanzamiento contiene los mismos componentes que el archivo APK de depuración (código fuente compilado, recursos, archivo de manifiesto y otros) y se compila usando las mismas herramientas de compilación. Sin embargo, a diferencia del archivo APK de depuración, el archivo APK listo para el lanzamiento se firma con tu propio certificado y se optimiza con la herramienta zipalign.

Se muestran las cinco tareas que debes realizar a fin de preparar tu app para el lanzamiento

Figura 2: Debes realizar cinco tareas principales a fin de preparar tu aplicación para el lanzamiento

Las tareas de firma y optimización normalmente no presentan interrupciones si compilas tu aplicación con Android Studio. Por ejemplo, puedes usar Android Studio con los archivos de compilación de Gradle para compilar, firmar y optimizar tu aplicación en un solo paso. Además, puedes configurar los archivos de compilación de Gradle para que hagan lo mismo cuando realices compilaciones desde la línea de comandos. Para descubrir cómo usar los archivos de compilación de Gradle, consulta la guía Sistema de compilación.

A fin de preparar tu app para el lanzamiento, por lo general debes realizar cinco tareas principales (consulta la figura 2). Cada tarea principal puede incluir una o más tareas más pequeñas según la forma en que lances tu aplicación. Por ejemplo, si lanzas tu aplicación a través de Google Play, tal vez te convenga agregar reglas especiales de filtrado a tu manifiesto mientras configuras tu aplicación para el lanzamiento. Del mismo modo, para cumplir con las pautas de publicación de Google Play, quizás debas preparar capturas de pantalla y crear texto promocional mientras recopilas el material para el lanzamiento.

Normalmente, realizas las tareas indicadas en la Figura 2 después de haber depurado y probado tu aplicación por completo. El SDK de Android incluye varias herramientas para ayudarte a probar y depurar tus aplicaciones de Android. Para obtener más información, consulta las secciones Depuración y Pruebas de la guía para desarrolladores.

Cómo recopilar materiales y recursos

A fin de comenzar a preparar tu aplicación para el lanzamiento, debes reunir varios elementos secundarios. Como mínimo, esto incluye claves criptográficas para firmar tu aplicación y un ícono de la aplicación. Probablemente, también te convenga incluir un contrato de licencia para el usuario final.

Claves criptográficas

El sistema Android requiere que cada aplicación que se instale esté firmada digitalmente con un certificado que pertenezca a su desarrollador (es decir, un certificado para el cual el desarrollador posea la clave privada). El sistema Android usa el certificado para identificar al autor de una aplicación y establecer relaciones de confianza entre aplicaciones. No es necesario que el certificado que uses para firmar esté firmado por una autoridad certificada. El sistema Android te permite firmar tus aplicaciones con un certificado autofirmado. Para obtener más información sobre los requisitos de certificación, consulta Cómo firmar tus aplicaciones.

Importante: La aplicación debe estar firmada con una clave criptográfica cuyo período de validez expire después del 22 de octubre de 2033.

Además, es posible que también debas obtener otras claves de lanzamiento si tu aplicación accede a un servicio o utiliza una biblioteca de terceros que requiera el uso de una clave basada en tu clave privada.

Ícono de la aplicación

Asegúrate de contar con un ícono de la app y de que cumpla con las pautas para íconos recomendadas. El ícono de tu aplicación ayuda a que los usuarios puedan identificarla en la pantalla principal de un dispositivo y en la ventana del Launcher. También aparece en "Administrar aplicaciones", "Mis descargas" y otras secciones. Además, los servicios de publicación, como Google Play, muestran tu ícono a los usuarios.

Nota: Si lanzas tu aplicación en Google Play, debes crear una versión del ícono en alta resolución. Para obtener más información, consulta Recursos gráficos para tu aplicación.

Contrato de licencia para el usuario final

Procura crear un contrato de licencia para el usuario final (CLUF) para tu app, ya que te ayudará a proteger tu persona, organización y propiedad intelectual. Por eso, te recomendamos que incluyas uno con tu aplicación.

Otros materiales

Es posible que también te convenga preparar materiales promocionales y de marketing para publicitar tu app. Si lanzas una aplicación en Google Play, por ejemplo, deberás preparar texto promocional y crear capturas de pantalla de tu aplicación. Para obtener más información, consulta Recursos gráficos para tu aplicación.

Cómo configurar tu app para el lanzamiento

Luego de recopilar todo el material complementario, puedes comenzar a configurar tu aplicación para el lanzamiento. En esta sección, se ofrece un resumen de los cambios de configuración que te recomendamos hacer en tu código fuente, en archivos de recursos y en el manifiesto de tu aplicación antes del lanzamiento. A pesar de que la mayoría de los cambios de configuración que se nombran en esta sección son opcionales, se consideran como buenas prácticas de programación y te recomendamos implementarlos. En algunos casos, es posible que ya hayas hecho algunos de estos cambios de configuración como parte de tu proceso de desarrollo.

Elige un nombre de paquete efectivo

Asegúrate de elegir un nombre para el paquete que sea apropiado para toda la vida útil de tu aplicación, ya que no podrás cambiarlo luego de distribuir tu aplicación a los usuarios. Puedes establecer el nombre del paquete en el archivo de manifiesto de tu aplicación. Para obtener más información, consulta la documentación del atributo de paquete.

Cómo desactivar el registro y la depuración

Asegúrate de desactivar el registro e inhabilitar la opción de depuración antes de compilar tu aplicación para el lanzamiento. Puedes desactivar el registro si quitas las llamadas a los métodos Log en los archivos fuente. Puedes inhabilitar la depuración si quitas el atributo android:debuggable de la etiqueta <application> en tu archivo de manifiesto o si configuras el atributo android:debuggable en false en tu archivo de manifiesto. Además, quita todos los archivos de registro o archivos de prueba estáticos que se hayan creado en tu proyecto.

También deberías quitar todas las llamadas de rastreo de Debug que hayas agregado a tu código, como las llamadas a métodos startMethodTracing() y stopMethodTracing().

Importante: Asegúrate de inhabilitar la depuración de tu app si usas WebView para mostrar contenido pago o si usas interfaces JavaScript, ya que la depuración permite que los usuarios inserten secuencias de comandos y extraigan contenido usando Chrome DevTools. Para desactivar la depuración, utiliza el método WebView.setWebContentsDebuggingEnabled().

Cómo limpiar los directorios de tu proyecto

Limpia tu proyecto y asegúrate de que cumpla con la estructura de directorios que se describe en Proyectos de Android. Dejar archivos sueltos o huérfanos en tu proyecto puede impedir que tu aplicación se compile y hacer que se comporte de manera impredecible. Como mínimo, debes realizar las siguientes tareas de limpieza:

  • Revisa los contenidos de tus directorios jni/, lib/ y src/. El directorio jni/ debería contener únicamente archivos fuente asociados con el NDK de Android, como los archivos .c, .cpp, .h y .mk. El directorio lib/ debe contener solo archivos de bibliotecas de terceros o privadas, incluidas las bibliotecas estáticas y compartidas que se hayan compilado previamente (por ejemplo, archivos .so). El directorio src/ debería contener únicamente los archivos fuente para tu aplicación (archivos .java y .aidl). El directorio src/ no debería contener ningún archivo .jar.
  • Busca los archivos de datos privados o de propietario que tu aplicación no use y quítalos de tu proyecto. Por ejemplo, en el directorio res/ de tu proyecto, busca archivos de elementos de diseño, archivos de diseño y archivos de valores antiguos que ya no uses, y bórralos.
  • En tu directorio lib/, busca bibliotecas de prueba y quítalas si ya no se usan en tu aplicación.
  • Revisa los contenidos del directorio assets/ y del directorio res/raw/ en busca de archivos de recursos sin procesar y archivos estáticos que necesites actualizar o quitar antes del lanzamiento.

Cómo revisar y actualizar tu manifiesto, y la configuración de compilación de Gradle

Comprueba que la configuración del manifiesto y de los elementos de archivos de compilación siguientes sea correcta:

  • elemento <uses-permission>

    Debes especificar únicamente aquellos permisos que sean relevantes y requeridos por tu app.

  • atributos android:icon y android:label

    Debes especificar valores para estos atributos, que se encuentran en el elemento <application>.

  • atributos android:versionCode y android:versionName

    Recomendamos que especifiques valores para estos atributos, que se encuentran en el elemento <manifest>. Para obtener más información, consulta Cómo controlar las versiones en tus aplicaciones.

Existen varios elementos de archivos de manifiesto o compilación adicionales que puedes configurar si lanzas tu aplicación en Google Play. Por ejemplo, los atributos android:minSdkVersion y android:targetSdkVersion, que se encuentran en el elemento <uses-sdk>. Para obtener más información sobre estas configuraciones de Google Play y otras, consulta Filtros en Google Play.

Cómo tratar los problemas de compatibilidad

Android ofrece varias herramientas y técnicas para que tu aplicación sea compatible con una amplia variedad de dispositivos. Si deseas que tu aplicación esté disponible para una mayor cantidad de usuarios, procura hacer lo siguiente:

  • Agrega compatibilidad para diferentes configuraciones de pantalla

    Asegúrate de cumplir con las prácticas recomendadas para la compatibilidad con diferentes pantallas. Cuando ofreces compatibilidad con diferentes configuraciones de pantalla, puedes crear una aplicación que funcione de manera adecuada y se vea bien en cualquiera de los tamaños de pantalla con los que Android sea compatible.

  • Optimiza tu app para tablets con Android

    Si tu aplicación está diseñada para dispositivos con versiones de Android anteriores a la 3.0, haz que sea compatible con dispositivos Android 3.0. Para ello, sigue las pautas y prácticas recomendadas descritas en Cómo optimizar apps para Android 3.0.

  • Considera el uso de la biblioteca de compatibilidad

    Si tu aplicación está diseñada para dispositivos con Android 3.x, haz que sea compatible con versiones anteriores de Android. Para ello, agrega la Biblioteca de compatibilidad al proyecto de tu aplicación. La Biblioteca de compatibilidad ofrece bibliotecas de compatibilidad estáticas que puedes agregar a tu aplicación para Android. Eso te permite usar las API que no estén disponibles en versiones de plataformas más antiguas o las API de utilidades que no formen parte de las API del framework.

Cómo actualizar las URL para servidores y servicios

Si tu aplicación accede a servidores o servicios remotos, asegúrate de usar la URL de producción o la ruta de acceso para el servidor o servicio, y no una URL o ruta de acceso de prueba.

Cómo implementar licencias (si lanzas tu app en Google Play)

Si lanzas una aplicación paga a través de Google Play, procura agregar compatibilidad con el servicio de licencias de Google Play. Las licencias te permiten controlar el acceso a tu aplicación dependiendo de si el usuario la compró o no. El uso del servicio de licencias de Google Play es opcional incluso si lanzas tu app a través de Google Play.

Para obtener más información sobre el servicio de licencias de Google Play y sobre la manera de usarlo en tu aplicación, consulta Licencias para aplicaciones.

Cómo compilar tu app para el lanzamiento

Cuando termines de configurar tu aplicación, puedes compilarla en un archivo APK listo para el lanzamiento, firmado y optimizado. El JDK incluye las herramientas para firmar el archivo APK (Keytool y Jarsigner); el SDK de Android incluye las herramientas para compilar y optimizar el archivo APK. Si usas Android Studio o el sistema de compilación de Gradle desde la línea de comandos, puedes automatizar el proceso completo. Para obtener más información sobre cómo configurar las compilaciones de Gradle, consulta Cómo configurar compilaciones de Gradle.

Cómo compilar con Android Studio

Puedes usar el sistema de compilación de Gradle, integrado con Android Studio, para compilar un archivo APK listo para el lanzamiento que esté optimizado y firmado con tu clave privada. Para aprender a configurar y ejecutar compilaciones desde Android Studio, consulta Cómo compilar y ejecutar desde Android Studio.

El proceso de compilación prevé que tienes un certificado y una clave privada adecuados para firmar tu aplicación. Si no los tienes, Android Studio puede ayudarte a generarlos. Para obtener más información sobre el proceso de firma, consulta Cómo firmar tus aplicaciones.

Cómo preparar recursos y servidores externos

Si tu aplicación depende de un servidor remoto, asegúrate de que el servidor esté protegido y configurado para usarse en la producción. Eso es muy importante si implementas la facturación integrada en la aplicación y realizas el paso de verificación de firma en un servidor remoto.

Además, si tu aplicación recupera contenido de un servidor remoto o un servicio en tiempo real (como un canal de contenido), asegúrate de que el contenido que proveas esté actualizado y listo para producción.

Cómo probar tu app para el lanzamiento

Probar la versión de lanzamiento de tu aplicación te ayuda a garantizar que se ejecute correctamente en condiciones reales de dispositivos y redes. Lo ideal sería que pruebes tu aplicación en al menos un dispositivo con el tamaño de un teléfono celular y uno con el de una tablet para verificar que los elementos de tu interfaz de usuario tengan el tamaño correcto y que el rendimiento y el consumo de batería de la aplicación sean aceptables.

Como punto de partida para las pruebas, consulta Qué aspectos se deben probar. En ese artículo, se resumen las situaciones comunes de Android que deberías tener en cuenta cuando realices pruebas. Cuando termines con las pruebas y estés satisfecho con el comportamiento de la versión de lanzamiento de tu aplicación, podrás publicarla. Para obtener más información, consulta Cómo lanzar tu aplicación para los usuarios. Si publicas tu aplicación en Google Play, consulta la lista de tareas para el lanzamiento en Google Play.