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设置中查看设备的连接状态和基本信息。

相关推荐
拭心5 小时前
Google 提供的 Android 端上大模型组件:MediaPipe LLM 介绍
android
mahuifa5 小时前
混合开发环境---使用编程AI辅助开发Qt
人工智能·vscode·qt·qtcreator·编程ai
冷眼看人间恩怨5 小时前
【Qt笔记】QDockWidget控件详解
c++·笔记·qt·qdockwidget
Clockwiseee6 小时前
php伪协议
windows·安全·web安全·网络安全
带电的小王7 小时前
WhisperKit: Android 端测试 Whisper -- Android手机(Qualcomm GPU)部署音频大模型
android·智能手机·whisper·qualcomm
梦想平凡7 小时前
PHP 微信棋牌开发全解析:高级教程
android·数据库·oracle
唐宋元明清21887 小时前
.NET 阻止系统睡眠/息屏
windows·电源
元争栈道7 小时前
webview和H5来实现的android短视频(短剧)音视频播放依赖控件
android·音视频
阿甘知识库8 小时前
宝塔面板跨服务器数据同步教程:双机备份零停机
android·运维·服务器·备份·同步·宝塔面板·建站
元争栈道9 小时前
webview+H5来实现的android短视频(短剧)音视频播放依赖控件资源
android·音视频