Attention: Here be dragons

This is the latest (unstable) version of this documentation, which may document features not available in or compatible with released stable versions of Godot.

Экспортирование для ОС Android

См. также

На этой странице описано, как экспортировать проект Godot на Android. Если вы хотите скомпилировать исполняемые файлы шаблона экспорта из исходного кода, см. Компиляция для Android.

Экспорт для Android имеет меньше требований, чем компиляция Godot для Android. В следующих шагах подробно описано, что необходимо для настройки Android SDK и движка.

Внимание

Проекты, написанные на C#, можно экспортировать в Android, начиная с Godot 4.2, но поддержка является экспериментальной и действуют некоторые ограничения.

Setup on Android

When exporting to Android from the Android editor, you do not need to install OpenJDK or the Android SDK when exporting to Android, regardless of the export method used (pre-built APK or Gradle build).

However, if you are performing a Gradle build, you will need to follow some steps described in Сборки Gradle для Android.

You can then skip to Предоставление иконок для лаунчера.

Setup on Windows, macOS, and Linux

Установка OpenJDK 17

Скачайте и установите OpenJDK 17.

Примечание

Более высокие версии JDK также поддерживаются, но мы рекомендуем использовать JDK 17 для оптимальной совместимости и стабильности.

Загрузите Android SDK

Скачайте и установите Android SDK.

sdkmanager --sdk_root=<android_sdk_path> "platform-tools" "build-tools;35.0.1" "platforms;android-35" "cmdline-tools;latest" "cmake;3.10.2.4988404" "ndk;28.1.13356709"

Примечание

Если вы используете Linux, не используйте Android SDK, предоставляемый репозиториями вашего дистрибутива, поскольку он часто устаревает.

Настройка в Godot

Откройте экран настроек редактора (на вкладке Godot в macOS или на вкладке Editor на других платформах). Этот экран содержит настройки редактора для учётной записи пользователя на компьютере (он не зависит от проекта).

../../_images/editorsettings.webp

Прокрутите вниз в раздел, где расположены настройки Android:

../../_images/android_editor_settings.webp

На этом экране необходимо указать путь к 2 файлам:

  • Java SDK Path должен указывать на место установки OpenJDK 17.

  • Android SDK Path должен указывать на место установки Android SDK. Этот каталог должен содержать platform-tools/adb. Например, %LOCALAPPDATA%\Android\Sdk\ в Windows или /Users/$USER/Library/Android/sdk/ в macOS.

Как только это настроено, все готово к экспорту на Android!

Примечание

Если вы получаете ошибку "Could not install to device.", убебитесь что вы не имеете установленную программу с таким же названием пакета Android (но подписанную другим ключём).

Если вы имеете программу с таким же названием пакета Android но с другим ключём, вы обязаны удалить программу с устройства Android перед повторным экспортом на Android.

Предоставление иконок для лаунчера

Значки программы запуска используются приложениями запуска Android для представления вашего приложения пользователям. Godot требует только значки с высоким разрешением (для экранов с плотностью xxxhdpi) и автоматически генерирует варианты с более низким разрешением.

Существует три типа значков:

  • Main Icon: (основной значок) - "классический" значок. Он будет использоваться исключительно на всех версиях Android до Android 8 (Oreo). Размер должен быть не менее 192×192 пикселей.

  • Adaptive Icons: Начиная с Android 8 (включительно), были введены Adaptive Icons. Приложения должны включать отдельные значки фона и переднего плана для естественного вида. Приложение запуска пользователя будет управлять анимацией и маскировкой значка. Размер должен быть не менее 432×432 пикселей.

  • Тематические значки (необязательно): Начиная с Android 13 (включительно), появились тематические значки. Для использования этой функции приложениям потребуется монохромный значок. Тема значка будет определяться приложением-лаунчером пользователя. Размер значка должен быть не менее 432×432 пикселей.

См. также

При разработке адаптивных значков важно придерживаться некоторых правил. Google Design предоставил отличную статью, которая помогает понять эти правила и некоторые возможности адаптивных значков.

Осторожно

Наиболее важным правилом адаптивного дизайна значка является отсутствие критических элементов значка внутри безопасной зоны: по центру круга диаметром 66dp (264 пикселя на xxxhdpi), чтобы избежать обрезки при запуске.

Если вы не предоставите запрошенные значки (за исключением монохромного), Godot заменит их, используя резервную цепочку, пробуя следующий в очереди, если текущий не удастся:

  • Главная иконка:**(**Main Icon:) Предоставленная главная иконка -> Иконка проекта -> Стандартная иконка Godot.

  • Adaptive Icon Foreground: (адаптивный значок переднего плана) - Provided foreground icon -> Provided main icon -> Project icon -> Default Godot foreground icon.

  • Adaptive Icon Background: (Адаптивный значок фона) - Provided background icon -> Default Godot background icon.

Настоятельно рекомендуется предоставить все требуемые иконки с указанными разрешениями. Таким образом, ваше приложение будет отлично выглядеть на всех устройствах и версиях Android.

Экспортирование в Google Play Store

All new apps uploaded to Google Play after August 2021 must be an AAB (Android App Bundle) file. To export an AAB file you need to set up Сборки Gradle для Android.

Для загрузки AAB или APK в магазин Google Play вам потребуется подписать его с помощью неотладочного файла хранилища ключей; такой файл можно создать следующим образом:

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

Это хранилище ключей и ключ используются для подтверждения вашей личности разработчика. Запомните пароль и сохраните его в надёжном месте! Рекомендуется использовать только заглавные и строчные буквы, а также цифры. Использование специальных символов может привести к ошибкам. Подробнее о подписи приложений можно узнать в руководствах Google для разработчиков Android app signing.

Теперь заполните следующие формы в ваших Android Export Presets:

../../_images/editor-export-presets-android.webp
  • Release: Введите путь к только что созданному файлу хранилища ключей.

  • Release User: Замените псевдонимом ключа.

  • Release Password: Пароль ключа. Обратите внимание, что в настоящее время пароль хранилища ключей и пароль ключа должны совпадать.

Не забудьте снять флажок Export With Debug при экспорте.

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

Оптимизация размера файла

You can optimize the size of your application by compiling an Android export template with only the features you need. See Оптимизация размера билда for more information.

Performing a custom Gradle build

If you need to modify the template's Java code or integrate with third-party Android SDKs, you may want to use a custom Gradle build instead of the default pre-built APK template. This allows you to have more control over the build process and the generated project, and you can use it as a base for further customization.

See Сборки Gradle для Android for guidance on setting up a custom Gradle build.

Переменные среды

Вы можете использовать следующие переменные окружения, чтобы задавать опции экспорта вне редактора. Во время процесса экспорта, они переопределяют значения, которые были заданы в меню экспорта.

Переменные среды экспорта Android

Опции экспорта

Переменная окружения

Шифрование / Ключ шифрования

GODOT_SCRIPT_ENCRYPTION_KEY

Options / Keystore / Debug

GODOT_ANDROID_KEYSTORE_DEBUG_PATH

Options / Keystore / Debug User

GODOT_ANDROID_KEYSTORE_DEBUG_USER

Options / Keystore / Debug Password

GODOT_ANDROID_KEYSTORE_DEBUG_PASSWORD

Options / Keystore / Release

GODOT_ANDROID_KEYSTORE_RELEASE_PATH

Options / Keystore / Release User

GODOT_ANDROID_KEYSTORE_RELEASE_USER

Options / Keystore / Release Password

GODOT_ANDROID_KEYSTORE_RELEASE_PASSWORD

Опции экспорта

Полный список доступных параметров экспорта можно найти в справочнике классов EditorExportPlatformAndroid.