Публикация в Google Play
Qt для Android предоставляет полное решение для разработки, сборки и подготовки ваших приложений для Android. Большинство этих задач, особенно упаковка и развертывание, выполняются Qt Creator, обеспечивая богатый опыт разработчика.
Каждый раз, когда вы запускаете приложение с помощью Qt Creator, создается пакет Android-приложения (APK) и развертывается на выбранном целевом устройстве (устройство или эмулятор). С небольшими изменениями в настройках упаковки вы можете опубликовать свое приложение в Google Play.
Сборка приложения
Следующие инструкции помогут вам создать .apk или .aab, которые могут быть опубликованы в Google Play
- Откройте свой проект в Qt Creator 4.11 или более поздней версии, выбрав
Release Build. - Выберите Проекты > Сборка > Сборка Android APK > Создать шаблоны для создания файлов шаблонов пакета Android, таких как
AndroidManifest.xml, который является основным файлом, интересующим нас здесь. - Проверьте следующие настройки в
AndroidManifest.xml:- Установите Минимальную требуемую версию SDK до API 23 или более поздней.
- Установите Имя приложения и Иконку приложения.
- Проверьте, что список Разрешений содержит все необходимые разрешения.
- Проверьте, что список Функций содержит программные или аппаратные функции, от которых зависит ваше приложение, такие как GPS или NFC.
Для получения дополнительной информации см. редактирование файлов манифеста в Qt Creator.
Примечание: По умолчанию Qt добавляет разрешения и функции на основе зависимостей модулей вашего приложения. Если вы не хотите использовать эти значения по умолчанию, снимите флажки Включить разрешения по умолчанию для модулей Qt и Включить функции по умолчанию для модулей Qt или удалите соответствующую часть из файла
AndroidManifest.xml.<!-- The following comment will be replaced upon deployment with default permissions based on the dependencies of the application. Remove the comment if you do not require these default permissions. --> <!-- %%INSERT_PERMISSIONS --> <!-- The following comment will be replaced upon deployment with default features based on the dependencies of the application. Remove the comment if you do not require these default features. --> <!-- %%INSERT_FEATURES -->Дополнительную информацию о формате XML манифеста см. в разделе Android: Манифест приложения.
- Настройте хранилище ключей для подписи вашего файла
.apk. Вы можете создать новое хранилище ключей, если у вас его нет. Более подробную информацию см. в разделе Указание настроек для пакетов в Qt Creator. - Найдите сгенерированный пакет:
- Для пакетов APK найдите пакет
.apkпо адресу:<$BUILD_DIR>/android-build/build/outputs/apk/release/android-build-release.apk
Примечание: В Qt Creator выберите Проекты > Сборка > Шаги сборки > Сборка Android APK > Открыть местоположение пакета после сборки, чтобы собрать
.apkприложения и открыть каталог, содержащий пакет. - Для пакетов AAB выберите Проекты > Сборка > Шаги сборки > Сборка Android APK > Сборка .aab (пакет приложения Android), чтобы Qt Creator сгенерировал файл
.aab, затем найдите пакет по адресу:<$BUILD_DIR>/android-build/build/outputs/bundle/release/android-build-release.aab
- Для пакетов APK найдите пакет
Загрузка приложения в магазин Google Play
Войдите в консоль разработчика Google Play и загрузите файлы .aab, а также описание и скриншоты, демонстрирующие использование вашего приложения.
Для версий Qt, поддерживающих сборку многоархивного пакета (т. е. Qt 5.14 и 5.15), достаточно загрузить один .aab со всеми поддерживаемыми архитектурами. Однако для версий Qt, не поддерживающих многоархивную сборку, для публикации приложения потребуются дополнительные шаги.
Публикация пакетов с одной архитектурой
Чтобы опубликовать приложение, собранное с использованием набора ABI с одной архитектурой, необходимо убедиться, что каждый ABI использует другой внутренний код версии. Код версии — это внутренний, не публичный идентификатор выпуска вашего приложения. Соберите каждую из архитектур, которые вы хотите поддержать, и установите для каждого ABI другой код версии. Это можно сделать следующим образом для CMake:
set_property(TARGET scroll_example APPEND PROPERTY QT_ANDROID_VERSION_CODE <unique_version>)
Или следующим образом для qmake:
ANDROID_VERSION_CODE = <unique_version>
Разработчик приложения может использовать определенную схему для кода версии, например, код может иметь разделы для платформы, ABI и фактической версии. Тогда пример схемы будет <Platform><ABI><AppVersion>:
- Платформа:
- 0 для Arm
- 1 для Intel
- Архитектура:
- 32 для 32-битной
- 64 для 64-битной
Полученный код версии для выпуска 1.0 для ABI arm64-v8a составит 06410.
На следующем снимке экрана показан пример приложения, нацеленного на 4 ABI, при этом каждый пакет использует уникальный код версии, отличный от имени версии, которое является общедоступной строкой версии.
Дополнительную информацию по упаковке см. в разделе Развертывание приложения на Android.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-6.2/android-publishing-to-googleplay.html