QT安卓软件的制作

一、Android Studio安装

下载Android Studio

下载 Android Studio 和应用工具 - Android 开发者 | Android Developers

下载汉化包

Chinese (Simplified) Language Pack / 中文语言包 Plugin for JetBrains IDEs | JetBrains Marketplace

Releases · sollyu/AndroidStudioChineseLanguagePack

Android Studio应用汉化插件

1、选择下载的汉化包 .jar 文件

2、点击ok后安装成功

3、关闭应用重新打开,选择Chinese简体中文

4、接着按照提示要求重启,中文汉化完成

二、QT Creator的配置

1、问题背景

你想在 Qt Creator 里配置安卓打包环境(用 Qt 6.8.3),但 Qt Creator 一直提示"安卓设置存在错误",SDK 管理器列表空白,点"更新已安装的"就弹窗报"无法找到下列重要包"(platform-tools、cmdline-tools;latest、emulator、extras;google;usb_driver、ndk;26.1.10909125、platforms;android-35、build-tools;35.0.0,一共 7 个)。

2、排查过程与排除项

从"缺包"这个表面现象往里挖,逐步排除了所有外围原因:

① 确认 7 个包的`package.xml` /`source.properties` 全部存在于磁盘,排除"真的没装"。

② 用`sdkmanager --list_installed` 能完整列出全部 7 个包,排除"SDK 索引损坏"。

③ 测`dl.google.com` 返回 200,仓库清单能完整下载,排除"网络不通"。

④ 核对 Qt 6.8.3 的`Core.json` ,它要求 NDK=26.1.10909125、api=android-35,跟你装的完全一致,排除"包选错"。

⑤ Qt Creator 版本 20.0.1、cmdline-tools 结构正常,排除"明显路径/版本问题"。

3、真正的根因

新版(2026 版)cmdline-tools 的`sdkmanager` 已被 Android 官方弃用,其`--version` 输出 第一行是 deprecation WARNING ,后面才跟`1.0.16500706 (Android CLI)` 。Qt Creator 调用 sdkmanager 时把输出按老格式解析,结果被第一行警告污染,解析失败 → 判定"工具无效"(配置里对应`SDKManagerToolArgs=@Invalid()` )→ 列表空白、误报"找不到包"。

一句话:不是包的问题,是 SDK 背后那套"管理工具"的版本格式 Qt Creator 不认识。 你之前配置里`AllEssentialsInstalled=false` 、SDK 管理器空白,全都能用这个原因串起来。

4、解决步骤

① 下载 Qt Creator 20.0.1 配套的标准 cmdline-tools (版本 12.0,`sdkmanager --version` 干净输出无警告)。

② 新建一套干净的 SDK ,路径:`C:\Users\HT\Desktop\AndroidSDK_new` ,把标准 cmdline-tools 放到`cmdline-tools\latest` 。

③ 写入手动许可文件(licenses),避免授权阻塞。

④ 用这套标准 sdkmanager 把全部 7 个必备包装进新 SDK:

  • platform-tools、cmdline-tools;latest、emulator、extras;google;usb_driver

  • ndk;26.1.10909125、platforms;android-35、build-tools;35.0.0

⑤ 删除多余的`latest-2` ,用`--list_installed` 验证 7 包齐全且版本正确。

⑥ 在 Qt Creator 里把 Android SDK 路径从旧路径改到`C:\Users\HT\Desktop\AndroidSDK_new` ,JDK 保持`E:\Android\jbr` 。

⑦ 处理"为所有 Qt 版本装必备包"的失败:去 Qt 版本页把用不到的 Qt 5.15.2 从注册里移除,让检查只针对 Qt 6.8.3。

⑧检查项变绿,安卓环境配置成功。

5、后续遗留(可选项)

  • 旧 SDK(`C:\Users\HT\AppData\Local\Android\Sdk` )里仍是新版 cmdline-tools,且该目录因权限/ACL 问题我这边无法自动清改,需要你自己在文件资源管理器里把`cmdline-tools\latest` 重命名备份,再用桌面标准版替换------这样旧路径也能直接用。

  • 关于 Qt 5.15.2:能用但要换回老套包(android-31 / build-tools 31 / ndk 21.3),且 5.15.x 已停止维护,若非强依赖,建议继续用已配好的 Qt 6.8.3。

6、同理可用于 Android Studio

如果你之后改走 Android Studio:SDK 位置是可换盘的(`File → Settings → Android SDK` 里改),Android Studio 会管好标准版 cmdline-tools,装完让 Qt Creator 指过去即可,能省掉这次这类版本兼容麻烦。

三、QT安卓软件安装包

Qt 版本 -- Android SDK 必备包对照表

Qt 版本 platforms build-tools NDK 其他必备
6.5 及以上(含 6.8.3) android-35 35.0.0 26.1.10909125 platform-tools、cmdline-tools;latest、emulator、extras;google;usb_driver(Windows)
6.4 android-31 31.0.0 23.1.7779620 同上
6.3 / 6.2 / 5.15.9-5.15.20 android-31 31.0.0 22.1.7171670 同上
6.1 / 6.0 / 5.15.0-5.15.8 / 5.13.2 / 5.12.x / 5.14.0-5.14.2 android-31 31.0.0 21.3.6528147 同上
5.13.0-5.13.1 / 5.12.0-5.12.5 android-28 28.0.2 19.2.5345600 同上

四、安卓手机上的测试

在电脑上编写完代码后,想在手机上测试,如何做呢?

步骤:

1、在 Qt Creator 的 首选项 -> 设备 -> Android 里,确保 JDK、Android SDK、NDK 路径都已正确配置(显示绿色对勾)。

2、在手机上打开 "开发者选项" 和 "USB 调试"。

3、用数据线连接手机和电脑。(手机上选择管理文件)

4、确认连接,在C:\Users\HT\AppData\Local\Android\Sdk\platform-tools目录下进入cmd,输入adb devices,列出设备列表表示成功。

5、编译构建

桌面版编译:

安卓版编译:

6、问题解决

报错:Unsupported class file major version 68/69

解决:Index of /Adoptium/17/jdk/x64/windows/ | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror

点击下载即可,安装JDK17解决版本不兼容问题,目录自己选择一个。

同时还要修改QT中的JDK配置,我的修改如下:

⚠️注意:需要切换到设备上,不是模拟器

7、给 Release 配置签名

五、自查命令

提供自查使用的命令:

1、看设备是否连上(显示 device 才是正常,unauthorized 表示手机上还没点"允许USB调试")

'C:\Users\HT\AppData\Local\Android\Sdk\platform-tools\adb.exe' devices

2、看手机架构,和套件对照

'C:\Users\HT\AppData\Local\Android\Sdk\platform-tools\adb.exe' shell getprop ro.product.cpu.abi

六、软件传输的第二种方法(微信发送)

上述步骤是提供数据线传输软件安装包,直接安装到手机上,还有另外的方法不靠数据线的,就是通过微信直接发送.apk文件。

⚠️注意:手机可能自动改名为.apk.1后缀,这是安全保护的正常现象,需要自己下载保存后去手动更改名字后缀为.apk就可以了。(直接在文件管理器点击就可以安装)

七、软件自更新

1、在gitee网站创建一个项目仓库。

2、在sourcetree软件克隆新建的仓库。

git clone https://用户名:私人令牌@gitee.com/lrc-sean/language_learning.git

3、文件修改。

version.json文件修改:

CMakeLists.txt文件修改:

4、将文件提交,并推送到远程仓库中。

以后每次发新版做更新,只做 3 件事

1、改版本号 :打开 CMakeLists.txt 第 3 行,把`VERSION 1.0` 改成更大的数,比如`VERSION 2.0`。

2、重新构建 ,得到新的 exe(桌面)和新的 apk(安卓)。

3、上传并改清单 :把新文件传到你那个网址上;然后编辑`version.json` ,把里面的版本号改成`2.0` ,下载地址指向刚传的新文件。

相关推荐
mmsx2 小时前
Android 架构分层:MVVM 与 MVP 共存,网络层怎么切
android·策略模式·mvvm·mvp
芦芭荞2 小时前
QT使用xml模版生成word文档
xml·qt·word
我是人✓2 小时前
Git远程协作与标签管理全攻略
git
mengzhi啊2 小时前
qt把结构体数据存入json文件
qt·json
闰土_RUNTU2 小时前
Git实用手册(持续更新)
git
Shaoshing3 小时前
ggggggggit
git
kaixin_learn_qt_ing3 小时前
写入二进制文件(Qt)
qt
Lucky GGBond3 小时前
解决 Git 推送报错:Could not resolve host 及 DNS 劫持排查指南
git
川石课堂软件测试3 小时前
自动化测试|持续集成Git使用详解
git·python·jmeter·mysql·ci/cd·容器·kubernetes