Windows下QtCreator+android编译环境配置

Windows下QtCreator+android编译环境配置

通过Qt Creator与android sdk ndk配置windows下的android编译环境

一、 安装QtCreator

1,windows10可安装Qt5.15.2版本,安装时需选择android编译选项
2,windows7可安装Qt5.12.12版本,安装时需选择andriod编译选项

注:win7安装Qt5.15.2后,对应QtCreator无法运行,原因可能与QtCreator版本有关。

注:经测试,win7中只能安装QtCreator 6以下的版本,否则无法运行。Qt5.15.2自带的QtCreator版本过高,在win7下无法运行。

二、 安装Android studio

安装后,在android studio和Tools->sdk manager窗口中选择安装sdk

可参考上图选择安装

注:此页面可设置sdk的安装路径。

三、 安装JDK

注:可安装1.8版本以上,如 jdk-8u191-windows-x64-8.0.1910.12.exe 或 jdk-11.0.22_windows-x64_bin.exe

注:安装android studio时jdk可能自动安装了,可先设定第四步中的JDK路径,有问题再单独安装

注**:QTCreator版本过高时****,上述jdk可能不满足,实测QTCreator10****.0.2及以下可用****。**

四、 在QtCreator中配置设备Android

图示为Qt Creator 8.0.1,在低版本QtCreator中可能会有些差异

1,如上图,设置JDK安装路径

2,设置Android sdk路径(安装android studio时会安装),并会列出已有的NDK list

3,缺少相关组件时,qtcreator会弹窗可自动下载相关组件

4,设备配置OK后,配置工程时可在Kits中可选择android kit(QT5.12.12一般为arm64-v8a, Qt5.15.2的就不分平台,需在build步骤中配置平台)

五、 具体编译配置

以下说明都以QT Creator8.0.1, QT5.15.2版本为例,不同的版本会有些差异。

编辑此区域

5.1、SDK编译配置
● 编译选择ndk22.1版本

如图所示,在Android NDK list中,斜体字的一行为当前生效的NDK版本,若要切换,选中需切换的一行,点击右侧的【Unset Default】按键,可将其切换为生效的NDK版本。

● 编译套件选择

选择QT5.15.2版本,并在右侧的Build步骤中,设置ABIs为arm64-v8a。

进行上述配置后基本就可以进行sdk编译了,需注意的是由于Qt5.15以上版本原因,编译出来的库名会自动带上_arm64-v8a的后缀,暂未找到自动去除的方法。

5.2、apk程序生成配置

自动生成android程序配置

如图,选择platform SDK 版本后,点击【Create templates】按键,可自动生成android的程序配置文件。

注:若之前已生成,可以不需重复生成,但切换sdk版本后,是否需重新生成,暂未知。

注:在实际使用中,之前在QT5.12.12中已设置好的配置,在QT5.15.2中使用时,出现过app运行时白板的问题。建议工程使用的QT版本有变化后最好重新生成。

android配置

如图,在AndroidManifest.xml中,可配置package name,设置mini sdk和Target SDK,以及添加相关的权限设置。

android设备的权限申请

android设备的许多操作需要有权限申请,在配置中设置权限后,有些权限仍需向设备进行弹窗申请。一般需要进行下述权限申请。

demo中文件路径的设置

由于android设备的权限问题,一般app安装的位置是没有权限进行读写操作的,因此需要设备app程序的相关路径。

注:插件库在生成apk时已经自动打包到了程序目录,因些插件目录需设置到app所在目录。

demo pro中配置生成apk时需要打包的配置

设备调试

可以通过USB连接设备(如手机),手机中需(开发者选项,不同设备可能有差异)打开USB调试和USB安装。

连上后,在Device中选择连接的设备,启动调试,构建成功后,可自动安装apk到手机中并启动,如果有异常在QTCreator的应用程序输出窗口中会有异常信息。

注:若不确定设备信息,可以在QT设置中查看设备的连接状态和基本信息。

相关推荐
冷凝女子1 分钟前
【QT】海康视频及openCv抓拍正脸接口
qt·opencv·音视频·海康
Mr Lee_31 分钟前
android 配置鼠标右键快捷对apk进行反编译
android
顾北川_野1 小时前
Android CALL关于电话音频和紧急电话设置和获取
android·音视频
&岁月不待人&1 小时前
Kotlin by lazy和lateinit的使用及区别
android·开发语言·kotlin
Jtti1 小时前
Windows系统服务器怎么设置远程连接?详细步骤
运维·服务器·windows
小奥超人2 小时前
PPT文件设置了修改权限,如何取消权?
windows·经验分享·microsoft·ppt·办公技巧
苏三有春2 小时前
PyQt5实战——UTF-8编码器功能的实现(六)
开发语言·qt
Vanranrr3 小时前
C++ QT
java·c++·qt
兆。3 小时前
掌握 PyQt5:从零开始的桌面应用开发
开发语言·爬虫·python·qt
Winston Wood3 小时前
Android Parcelable和Serializable的区别与联系
android·序列化