Exportación para Android

Exportar para Android tiene menos requisitos que compilar Godot para él. Los siguientes pasos detallan lo que se necesita para configurar el SDK y el motor.

Descargar el SDK de Android

Descarga e instala el SDK de Android desde http://developer.android.com/sdk/index.html

Instalar OpenJDK u Oracle JDK

Descarga e instala OpenJDK u Oracle JDK. Es posible que las versiones inferiores a JDK 8 no funcionen, algunos usuarios han informado de problemas con el jarsigner (utilizado para firmar los APK) en JDK 7.

Crear un debug.keystore

Android necesita un archivo de almacenamiento de claves de depuración para instalarlo en dispositivos y distribuir APKs no liberados. Si has usado el SDK antes y has construido proyectos, ant o eclipse probablemente generó uno para ti (en Linux y macOS, puedes encontrarlo en el directorio ~/.android).

Si no puede encontrar o generar uno, el comando keytool de JDK puede usarse para éste propósito:

keytool -keyalg RSA -genkeypair -alias androiddebugkey -keypass android -keystore debug.keystore -storepass android -dname "CN=Android Debug,O=Android,C=US" -validity 9999

Asegúrate de que tienes adb

Android Debug Bridge (adb) es la herramienta de línea de comandos utilizada para comunicarse con dispositivos Android. Se instala con el SDK, pero es posible que necesites instalar uno (cualquiera) de los niveles de la API de Android para que se instale en el directorio del SDK.

Instalándolo en Godot

Acceda a la pantalla Ajustes del editor. Esta pantalla contiene la configuración del editor para la cuenta de usuario en la computadora (Es independiente del proyecto).

../../../_images/editorsettings.png

Desplázate hacia abajo hasta la sección donde se encuentra la configuración de Android:

../../../_images/androidsdk.png

En esta pantalla, se debe establecer la ruta a 3 archivos:

  • El ejecutable adb (adb.exe en Windows)
  • El ejecutable jarsigner (desde JDK 6 u 8)
  • El depurador keystore

Una vez configurado ¡todo está listo para exportar a Android!

Exportar para la Google Play Store

Subir un APK a Google Play Store requiere que sea firmado usando un archivo keystore non-debug, el cual puede generarse así:

keytool -v -genkey -v -keystore mygame.keystore -alias mygame -keyalg RSA -validity 10000

Este keystore y su clave se utilizan para verificar la identidad de su desarrollador, recuerda la contraseña y guárdala en un lugar seguro. Utiliza las guías de Google para desarrolladores de Android para obtener más información sobre APK signing.

Ahora rellena los siguientes formularios en tus opciones predeterminadas de exportación Android:

../../../_images/editor-export-presets-android.png
  • Release: Enter the path to the keystore file you just generated.
  • Release User: Replace with the key alias.
  • Release Password: Key password. Note that the keystore password and the key password currently have to be the same.

Your export_presets.cfg file now contains sensitive information. If you use a version control system, you should remove it from public repositories and add it to your .gitignore file or equivalent.

Don’t forget to uncheck the Export With Debug checkbox while choosing the APK’s name.

../../../_images/export-with-debug-button.png

Optimizing the APK size

By default, the APK will contain native libraries for both ARMv7 and ARMv8 architectures. This increases its size significantly. To create a smaller APK, uncheck either Armeabi-v 7a or Arm 64 -v 8a in your project’s Android export preset. This will create an APK that only contains a library for a single architecture. Note that applications targeting ARMv7 can also run on ARMv8 devices, but the opposite is not true.

Since August 2019, Google Play requires all applications to be available in 64-bit form. This means you cannot upload an APK that contains just an ARMv7 library. To solve this, you can upload several APKs to Google Play using its Multiple APK support. Each APK should target a single architecture; creating an APK for ARMv7 and ARMv8 is usually sufficient to cover most devices in use today.

You can optimize the size further by compiling an Android export template with only the features you need. See Optimizing a build for size for more information.