Экспорт для Android

Exporting for Android has fewer requirements than compiling Godot for Android. The following steps detail what is needed to set up the Android SDK and the engine.

Загрузите Android SDK

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

  • Вы можете установить это используя Android Studio версии 4.1 или старше.

    • Запустите её один раз чтобы завершить установку SDK по инструкциям.

    • Убедитесь, что`необходимые пакеты <https://developer.android.com/studio/intro/update#recommended>`__также установлены правильно .

      • Инструменты сборки Android SDK версии 30.0.5 или более поздней

      • Инструменты сборки Android SDK версии 30.0.3

      • Платформа Android SDK 29

      • Инструменты Android SDK для командной строки(последние)

      • CMake версии 3.10.2.4988404

      • NDK версии 21.4.7075529

  • Вы можете установить это используя`инструменты командной строки <https://developer.android.com/studio/#command-tools>`__.

sdkmanager --sdk_root=<android_sdk_path> "platform-tools" "build-tools;30.0.3" "platforms;android-29" "cmdline-tools;latest" "cmake;3.10.2.4988404" "ndk;21.4.7075529"

Примечание

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

Install OpenJDK 8

Download and install OpenJDK 8.

Создайте debug.keystore

Android требуется файл хранилища ключей отладки для установки на устройства и распространения не выпускаемых APK. Если вы использовали SDK раньше и создавали проекты, возможно,*ant* или*eclipse* сгенерировали его для вас (в Linux и macOS вы можете найти его в каталоге``~/.android``, на Windows в C:\Users\<user>\.android\).

Если вы не можете его найти или вам нужно его сгенерировать, для этой цели можно использовать команду keytool из JDK:

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

Это создаст файл debug.keystore в вашем текущем каталоге. Вы должны переместить его в запоминающееся место, такое как %USERPROFILE%\.android\, потому что вам понадобится его местоположение на более позднем этапе. Для получения дополнительной информации об использовании keytool см. эту статью вопросов и ответов.

Настройка в Godot

Войдите в экран настроек редактора. Этот экран содержит настройки редактора для учетной записи пользователя на компьютере (не зависит от проекта).

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

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

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

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

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

  • Файл отладки .keystore - его можно найти в папке, где вы поместили файл debug.keystore, который вы создали выше.

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

Примечание

If you get an error saying "Could not install to device.", make sure you do not have an application with the same Android package name already installed on the device (but signed with a different key).

If you have an application with the same Android package name but a different signing key already installed on the device, you must remove the application in question from the Android device before exporting to Android again.

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

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

Существует два вида иконок необходимых в Godot:

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

  • Adaptive Icons: (адаптивные значки - начиная с Android 8 (включительно), были введены Adaptive Icons. Приложения должны включать отдельные значки фона и переднего плана, чтобы иметь естественный вид. Приложение запуска пользователя будет управлять анимацией и маскировкой значка. Размер должен быть не менее 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.

It's highly recommended to provide all the requested icons with their specified resolutions. This way, your application will look great on all Android devices and versions.

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

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

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

Это хранилище ключей и ключ используются для проверки вашей личности разработчика, запоминания пароля и хранения его в надежном месте! Используйте руководства Google для разработчиков Android, чтобы узнать больше о подписывании APK.

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

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

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

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

Ваш файл export_presets.cfg теперь содержит конфиденциальную информацию. Если вы используете систему контроля версий, вам следует удалить её из общедоступных репозиториев и добавить в свой файл .gitignore или аналогичный.

Don't forget to uncheck the Export With Debug checkbox while exporting.

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

Оптимизация размера APK

По умолчанию APK будет содержать собственные библиотеки для архитектур ARMv7 и ARMv8. Это значительно увеличивает его размер. Чтобы создать APK меньшего размера, снимите флажок Armeabi-v 7a или Arm 64 -v 8a в предустановке экспорта Android вашего проекта. Это создаст APK, который содержит только библиотеку для одной архитектуры. Обратите внимание, что приложения, ориентированные на ARMv7, также могут работать на устройствах ARMv8, но обратное неверно.

С августа 2019 года Google Play требует, чтобы все приложения были доступны в 64-битной форме. Это означает, что вы не можете загрузить APK, содержащий только библиотеку ARMv7. Чтобы решить эту проблему, вы можете загрузить несколько APK в Google Play, используя его поддержку Multiple APK. Каждый APK должен быть ориентирован на одну архитектуру; создания APK для ARMv7 и ARMv8 обычно достаточно для охвата большинства устройств, используемых сегодня.

Вы можете дополнительно оптимизировать размер, скомпилировав шаблон экспорта Android только с необходимыми функциями. Смотрите Optimizing a build for size для получения дополнительной информации.