Експорт на Android

Дивись також

На цій сторінці описано, як експортувати проект Godot на Android. Якщо замість цього ви хочете зібрати двійкові файли шаблонів експорту з джерела, прочитайте Compiling for Android.

Експорт для Android вимагає менше вимог, ніж компіляція Godot для нього. Наступні кроки детально описують, що потрібно для налаштування Android SDK та движка.

Встановлення OpenJDK 11

Завантажте та встановіть OpenJDK 11.

Завантажте Android SDK

Завантажте та встановіть Android SDK.

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

Примітка

Якщо ви використовуєте Linux, не використовуйте Android SDK, наданий сховищами вашого дистрибутива, оскільки він часто застарілий.

Створіть debug.keystore

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

Якщо ви не можете його знайти, або вам потрібно його створити, для цього можна використовувати команду "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 дивіться `ці запитання та відповіді<https://godotengine.org/qa/21349/jdk-android-file-missing>`__.

Налаштуйте це в 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!

Примітка

Якщо з'являється повідомлення про помилку "Could not install to device." ("Не вдалося встановити на пристрій."), переконайтеся, що у вас немає програми з тією ж назвою пакета Android, яка вже встановлена на пристрої (але підписана іншою ключем).

Якщо у вас є програма з тією ж назвою пакета Android, але інший ключ підпису вже встановлений на пристрої, ви повинні видалити відповідну програму з пристрою Android, перш ніж знову виконувати експорт на Android.

Надання піктограм панелі запуску

Піктограми панелі запуску використовуються програмами запуску Android для представлення вашої програми користувачам. Godot вимагає лише піктограм високої роздільної здатності (для екранів щільності xxxhdpi) і автоматично генерує варіанти нижчої роздільної здатності.

Godot має два типи піктограм:

  • Головна піктограма: "Класична" піктограма. Вона буде використовуватися на всіх версіях Android до Android 8 (Oreo). Має бути принаймні 192 × 192 пікселів.

  • Адаптивні піктограми: Починаючи з Android 8 (включно), були введені адаптивні піктограми. Додатки повинні мати окремі піктограми фону та переднього плану, щоб мати природний вигляд. Програма запуску користувача буде керувати анімацією та маскуванням значка. Має бути принаймні 432 × 432 пікселів.

Дивись також

Важливо дотримуватися деяких правил при розробці адаптивних піктограм. Google Design подає чудову статтю, яка допомагає зрозуміти ці правила та деякі можливості адаптивних піктограм.

Застереження

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

Якщо ви не підготуєте деякі із запитуваних піктограм, Godot замінить їх за допомогою резервного ланцюжка, вставляючи наступний у черзі, коли поточний не вдається:

  • Головна піктограма: Надана головна піктограма -> Піктограма проєкту -> Основна піктограма Godot за замовчуванням.

  • Адаптивна піктограма переднього плану: Надана піктограма переднього плану -> Головна піктограма, що надається -> Піктограма проєкту -> Піктограма переднього плану Godot за замовчуванням.

  • Адаптивний фон піктограми: Надана піктограма фону -> Піктограма фону Godot за замовчуванням.

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

Експорт для 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, або аналогічний.

Не забудьте зняти галочку Export With Debug (Експортувати з налагодженням) під час експортування.

../../_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, використовуючи `підтримку кількох APK<https://developer.android.com/google/play/publishing/multiple-apks>`__. Кожен файл APK повинен бути націлений на одну архітектуру; створення файлу APK для ARMv7 та ARMv8 зазвичай достатньо для охоплення більшості пристроїв, що використовуються сьогодні.

Також ви можете оптимізувати розмір, склавши зразок експорту для Android лише з потрібними вам функціями. Дивіться Optimizing a build for size для додаткової інформації.

Виправлення неполадок з рендерингом

Щоб підвищити продуктивність поза коробкою на мобільних пристроях, Godot автоматично використовує налаштування з низьким рівнем доступу за замовчуванням як на Android, так і на iOS.

Це може призвести до проблем рендеринга, які не виникають при запуску проекту на настільній платформі. Докладніше про це можна дізнатися в Mobile rendering limitations.