
1. 环境准备软件下载与版本匹配搞Qt安卓开发最头疼的就是环境配置我当年第一次搭环境花了整整三天光解决版本冲突就重装了五次。这次以Qt5.12.12为例手把手带你避开所有坑点。核心软件清单JDK 8u131必须用这个特定版本新版JDK会导致QtCreator识别异常Android Studio 2024.1.2注意后面配置时要关闭自动更新Qt5.12.12离线安装包国内官网屏蔽的解决方案后面会讲这里有个血泪教训Qt5.12.12对安卓工具链版本极其敏感。官方文档说支持NDK r21但实测必须用NDK 21.3.6528147差一个小版本都会编译失败。建议直接从我提供的百度云链接提取码6xct下载全套匹配好的工具包包含预配置好的SDK tools 8.0适配的build-tools 30.0.2/28.0.3免配置的android-openssl重要提示千万不要在QtCreator里直接下载SDK组件我遇到过自动下载的cmdline-tools版本过高导致整个环境崩溃的情况后面会教你怎么手动替换。2. 关键软件安装实操2.1 JDK安装的隐藏陷阱双击安装jdk_8u131时要注意安装路径不要有中文或空格比如默认的Program Files就是个坑一定要取消公共JRE的安装选项如下图红框处安装完成后需要验证环境变量java -version javac -version如果两个命令显示的版本号不一致说明PATH配置有问题。我常用的解决方法是手动添加setx PATH %PATH%;C:\Java\jdk1.8.0_131\bin2.2 Qt5.12.12的特殊安装技巧离线安装包经常卡在账号验证环节这里分享两个实测有效的方案断网安装法拔网线运行安装程序跳过在线验证hosts修改法在C:\Windows\System32\drivers\etc\hosts末尾添加127.0.0.1 account.qt.io 127.0.0.1 licenses.qt.io安装组件选择时重点勾选Android ARMv7Android x86Sources调试时需要 千万别选Qt WebEngine这个模块需要额外配置Chromium环境新手极易翻车。3. 安卓环境配置全流程3.1 SDK路径的生死时速Android Studio安装时有个致命细节SDK路径必须与QtCreator设置的完全一致。我建议统一设为D:\Android\sdk配置流程在QtCreator选择工具-选项-设备-Android点击...按钮设置SDK路径勾选使用自定义JDK位置指向之前安装的JDK8常见报错解决方案如果提示Missing SDK tools directory 检查sdk目录下是否有cmdline-tools文件夹如果提示NDK not configured 需要手动下载NDK 21.3.6528147并解压到sdk/ndk目录3.2 版本匹配的终极方案打开Qt安装目录下的关键配置文件Qt\Tools\QtCreator\share\qtcreator\android\sdk_definitions.json修改以下参数{ cmdline-tools: 8.0, build-tools: [30.0.2, 28.0.3], ndk: 21.3.6528147 }然后执行秘密操作把下载的cmdline-tools 8.0文件夹重命名为latest。这是因为QtCreator会强制检查latest目录但新版本又不兼容JDK8。4. 疑难杂症解决方案4.1 编译时报openssl错误典型错误信息error: Cannot find Android openssl解决方法手动下载android-opensslgit clone https://github.com/KDAB/android_openssl.git复制到sdk目录下的extras文件夹在QtCreator的构建套件设置中添加环境变量ANDROID_OPENSSL_ROOTD:\Android\sdk\extras\android_openssl4.2 设备连接问题排查当安卓手机连接电脑没反应时检查开发者选项中的USB调试是否开启安装Google USB Driver在Android Studio的SDK Manager里运行adb命令查看设备adb devices如果显示unauthorized在手机上弹出的授权对话框中点击允许。5. 项目实战验证新建Qt Quick项目时务必选择构建套件Android for armeabi-v7aMinimum SDKAPI 21对应Android 5.0编译完成后在build目录会生成.apk文件。如果安装失败试试这个命令adb install -r -t app-debug.apk参数说明-r 替换现有应用-t 允许测试包我在华为Mate40和小米11上都实测通过如果遇到闪退问题通常是so库兼容性问题需要在pro文件添加android-extra-plugins: android_style整个环境搭建最关键的其实就是版本匹配就像玩俄罗斯方块每个组件都必须严丝合缝。记得我第一次成功编译出APK时激动得差点把咖啡洒在键盘上。现在把这份经验分享给你希望能少走些弯路。