本页内容

发布到 Google Play

Qt for Android提供了开发、构建和打包 Android 应用所需的一切。本指南将向您展示如何配置、构建应用,并将其发布到 Google Play 控制台。

配置您的应用

您可以通过 CMake API 或直接编辑清单文件来配置 Android 应用的设置。Android 应用需要在 `AndroidManifest.xml ` 文件和 Gradle 构建文件中进行各种设置。Qt 6 提供了便捷的 CMake API,可让您在项目中管理这些设置。

设置应用的基本属性

定义应用的包名、版本以及 Android SDK 要求:

set_target_properties(${appname} PROPERTIES
    QT_ANDROID_PACKAGE_SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/android"
    QT_ANDROID_PACKAGE_NAME "io.qt.calqlatr"
    QT_ANDROID_APP_NAME "Calqlatr"
    QT_ANDROID_TARGET_SDK_VERSION 35
    QT_ANDROID_MIN_SDK_VERSION 28
    QT_ANDROID_VERSION_NAME "1.0"
    QT_ANDROID_VERSION_CODE 10
)

注意:请查看 当前 Google Play 目标 SDK 版本要求,并据此设置QT_ANDROID_TARGET_SDK_VERSION 。您可以将目标版本设为高于最低要求。

配置应用图标

设置应用图标,并在正确的目录中创建图标文件:

set_target_properties(${appname} PROPERTIES
    QT_ANDROID_APP_ICON "@drawable/ic_launcher"
)

将图标文件放置在:

<QT_ANDROID_PACKAGE_SOURCE_DIR>/res/drawable-<dpi>

您可以使用以下工具创建图标文件:

优化插件打包

通过指定要包含的插件来减小应用大小。androiddeployqt工具可能会包含应用在运行时并不需要的插件:

qt_import_plugins(${appname}
    INCLUDE_BY_TYPE imageformats Qt::QSvgPlugin Qt::QJpegPlugin
    EXCLUDE_BY_TYPE iconengines networkinformation tls platforminputcontexts qmltooling
)

注意: qt_import_plugins命令仅包含目标项目链接依赖项中的插件。

构建您的应用

为发布构建您的应用,并准备将其提交至 Google Play Console。

配置发布版构建

Google Play 要求提供发布版构建。调试信息可以作为单独的文件包含在内,为获得更好的崩溃报告效果,建议这样做:

  1. 在Qt Creator
  2. 从侧边栏中选择“Projects ”
  3. 选择“Release ”构建配置
qt-cmake -DCMAKE_BUILD_TYPE=Release

确保在清单或 Gradle 配置中将“debuggable”设置为“false ”。

启用多 ABI 支持

为多种设备架构构建应用,以最大限度地提高兼容性:

  1. 访问Projects >Build
  2. 在 CMake 配置设置中,将QT_ANDROID_BUILD_ALL_ABIS 设置为ON
qt-cmake -DQT_ANDROID_BUILD_ALL_ABIS:BOOL=ON ...

创建签名密钥

Google Play Console 要求应用发布版本必须经过签名。Google 建议使用 Google Play 托管签名服务,该服务包含两把密钥:

  • 签名密钥:在 Google Play 控制台创建应用时由 Google 生成并管理
  • 上传密钥:在本地管理,用于对要上传的应用包进行签名
  1. 打开Projects >Build
  2. 选择Build Android APK
  3. 点击“Create ”Application Signature
  4. 填写密钥库详细信息
  5. 启用Sign package

有关详细说明,请参阅《签署 Android 软件包》。

生成密钥库:
keytool -genkey -keyalg RSA -keystore upload-key.keystore \
    -alias play_apps \
    -storepass <password> -keypass <key-password> \
    -dname "CN=<n>, OU=<unit>, O=<organisation>, L=<city>, ST=<state>, C=<country>"

启用签名:

qt-cmake -DQT_ANDROID_SIGN_APK:BOOL=ON -DQT_ANDROID_SIGN_AAB:BOOL=ON ...

设置环境变量:

export QT_ANDROID_KEYSTORE_PATH=upload-key.keystore
export QT_ANDROID_KEYSTORE_ALIAS=play_apps
export QT_ANDROID_KEYSTORE_STORE_PASS=<password>
export QT_ANDROID_KEYSTORE_KEY_PASS=<key-password>

生成应用包(AAB)

Google Play 控制台现在主要支持 Android 应用包(AAB),而非 APK。AAB 包可让 Google Play 为每台设备优化应用分发。

  1. 访问Projects >Build
  2. 选择Build Android APK
  3. 在“Advanced Actions ”下,启用Build Android App Bundle
  4. 可选:启用Open package location after build
  5. 构建您的项目

生成 AAB:

cd build
cmake --build . --target aab

针对特定目标:

cmake --build . --target appname_make_aab

您的 AAB 文件将保存至:/<build-path>/android-build-appname/build/outputs/bundle/release/

发布到 Google Play 控制台

在构建并签署应用后,将其发布到 Google Play 控制台以进行分发。

上传前的准备工作

上传前:

  1. 在不同设备和 Android 版本上对应用进行全面测试
  2. 准备宣传材料(截图、描述、特色图片)
  3. 查阅 Google Play 的内容政策和指南

在 Google Play 控制台中创建您的应用

  1. 登录Google Play 控制台
  2. 创建新应用或选择现有应用
  3. 填写应用详情并完成内容分级问卷
  4. 配置定价和分发设置

如果您还没有账户,请参阅 GooglePlay 控制台设置指南来创建一个账户。

上传应用包

  1. 导航至Release >Production
  2. 创建新版本
  3. 上传已签名的 AAB 文件
  4. 添加版本说明
  5. 审核并发布该版本

资源

特殊注意事项

针对旧版项目的单一 ABI 构建

对于不支持多 ABI 构建的 Qt 版本(例如 qmake 项目),请使用不同的版本代码分别构建每种架构:

ANDROID_VERSION_CODE = <unique_version>

建议采用类似<Platform><ABI><AppVersion> 的版本命名方案:

  • 平台:1 代表 Arm,2 代表 Intel
  • 架构:32 代表 32 位,64 代表 64 位

示例:arm64-v8a 架构的 1.0 正式版使用版本代码16410 。

详情请参阅 Google的应用版本控制文档。

另请参阅 《在 Android 上部署应用程序》。

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.