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.
Checking the stable version of the documentation...
Экспортирование для ОС 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.
Вы можете установить Android SDK с помощью Android Studio Iguana (версия 2023.2.1) или более поздней версии.
Запустите её один раз чтобы завершить установку SDK по инструкциям.
Убедитесь, что также установлены необходимые пакеты.
Android SDK Platform-Tools версии 35.0.0 или новее
Android SDK Build-Tools версии 35.0.1
Android SDK Platform 35
Android SDK Command-line Tools
Убедитесь, что установлены и настроены NDK и CMake.
CMake version 3.10.2.4988404
NDK версии r28b (28.1.13356709)
Alternatively, you can install the Android SDK with the
sdkmanagercommand line tool.Установите пакет инструментов командной строки, следуя этим инструкциям.
Once the command line tools are installed, run the following
sdkmanagercommand to complete the setup process:
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 на других платформах). Этот экран содержит настройки редактора для учётной записи пользователя на компьютере (он не зависит от проекта).
Прокрутите вниз в раздел, где расположены настройки Android:
На этом экране необходимо указать путь к 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:
Release: Введите путь к только что созданному файлу хранилища ключей.
Release User: Замените псевдонимом ключа.
Release Password: Пароль ключа. Обратите внимание, что в настоящее время пароль хранилища ключей и пароль ключа должны совпадать.
Не забудьте снять флажок Export With Debug при экспорте.
Оптимизация размера файла
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.
Переменные среды
Вы можете использовать следующие переменные окружения, чтобы задавать опции экспорта вне редактора. Во время процесса экспорта, они переопределяют значения, которые были заданы в меню экспорта.
Опции экспорта |
Переменная окружения |
|---|---|
Шифрование / Ключ шифрования |
|
Options / Keystore / Debug |
|
Options / Keystore / Debug User |
|
Options / Keystore / Debug Password |
|
Options / Keystore / Release |
|
Options / Keystore / Release User |
|
Options / Keystore / Release Password |
|
Опции экспорта
Полный список доступных параметров экспорта можно найти в справочнике классов EditorExportPlatformAndroid.