前言
之前使用过qt5.14.2下的安卓开发,后来想升个级使用qt5.15.2,尝试重装qt,配置 三天无果后,用上了qt6.5.3,最终还是被qt版本限制了。。。
安装环境:
- windows 10 x64
- qt creator 12.0.1
- qt6.5.3
- jdk11
安装qt
qt5.15之后都采用在线安装方式,自定义组件安装还是很方便的。
[qt下载链接]()
运行、登录、选择对应qt版本的组件(android、mingw和必要的外部库组件)、下载安装。。。
安装jdk
在qt for android中,一般只使用jdk8或jdk11两个版本,本qt6.5.3使用jdk11。
[jdk下载链接]()
选择对应系统架构下载,安装。
可自定义安装位置,安装成功会自动添加java环境变量,网上很多教程添加一堆的环境变量,没有必要。
配置环境
qt for android环境需要配置 jdk、sdk、ndk、openssl,除了jdk其他可以自动下载安装。
1、打开qt creator,进入首选项->设备->android
2、指定jdk位置,对应jdk11的安装位置
3、指定一个sdk位置,一个空的文件夹即可
4、点击设置sdk,自动下载sdk和必要的组件包括ndk
5、指定一个openssl位置,一个空的文件夹即可
6、点击下载openssl,自动下载安装。
如果出意外的话,就会出现以下成果,配置成功。
但是多半是出问题的,不然我也不至于搞了这么久。
如果没有问题,首次编译安卓套件会自动下载gradle打包工具,也可自己设置,后续就可正常开发。
问题解决
sdk配置报错:× android sdk command-line tools runs
设置sdk后,出现的错误包括其中好几个条件打叉,问题一般是command-line tools (latest) 版本过高导致报错,以下有两种kb88凯时官网登录的解决方案:
1、手动下载command-line tools
windows环境下,[下载链接](),下载后解压缩,替换掉sdk路径->cmdline-tools->latest中的文件,重启qt creator,重新设置sdk,得以更新command-line tools。
2、设置qt定义文件,修改其latest版本
使用everything搜索sdk_definitions.json,有多处全部修改cmdline-tools的版本;把latest改成6.0或7.0,如路径:f:\qt\tools\qtcreator\share\qtcreator\android\sdk_definitions.json
然后重新设置sdk,自动安装对应版本。
qt版本出现错误:无法检测 qt 版本所使用的 abi。
看网上教程说:“这是jdk太高所出现的,要减低jdk版本”。当我配置qt5.15.2的安卓环境时,尝试了jdk11和jdk8的各个版本,无法解决,最终安装了qt6.5.3的android组件才得以使用,也就是本教程记录的最终环境。但出现这个问题可以尝试修改qt的版本。
安卓构建套件警告:no device set
这个qt creator版本需要先设置安卓设备,可以设置虚拟安卓环境,也可以连接真机。这里使用真机调试。首先手机开启usb调试,然后使用数据线连接电脑,(有的数据线只能充电。。。),在qt creator的首选项->设备可以识别到手机设备信息,这里可以使用wifi连接调试更方便,最后设置android默认设备即可。