前言
本文为笔者学习和开发过程中的学习记录,若有错误之处欢迎指正。
提示:以下是本篇文章正文内容,下面案例可供参考
一、准备工作
-
需要事先准备好Qt 5.13.1(或Qt 5.13.2)的安装文件。 -
准备好搭建环境的JDK、NDK、SDK等文件。 -
注意事项:个人建议使用我提供的文件,Qt对JDK、SDK的版本支持有限制。 -
下面提供我搭建环境使用的文件链接 需要准备的文件如下图所示: 链接:https://pan.baidu.com/s/1SiKMnrFSeBYtLX-ijJNCwQ 提取码:C520
二、安装Qt及插件
1.安装Qt
注意事项:安装 Qt 的时候,最好断网跳过验证邮箱和验证账号的操作。 下载好后,右键以管理员方式运行,在断网的情况下,不会出现下面窗口: 在断网的情况下安装,会出现下列选择组件的窗口 我选择的组件如下所示(和上图所示一样):
个人建议:不要全选安装,占用电脑空间太大,安装速度慢。(当然在你电脑空间富余的情况下,你也可以选择全部安装)
2.安装JDK
将下载好的压缩包,解压到Qt安装的文件夹下(个人建议使用我提供的文件) 若我提供的文件有问题,此处提供JDK的下载地址
https://www.oracle.com/technetwork/java/javase/downloads/index.html
Qt对于JDK的版本有要求,个人建议使用JDK8,至于安装路径,我建议安装在Qt安装文件夹下,安装步骤很简单,根据提示一步一步来就可以。
3.安装SDK
将下载好的压缩包,解压到Qt安装的文件夹下(个人建议使用我提供的文件) 若我提供的文件有问题,此处提供SDK的下载地址
https://www.androiddevtools.cn/
打开解压后的文件夹如下图所示: 此文件,可能会一闪而逝,此时就需要修改配置文件,进入上图的tools文件夹下,找到 android.bat文件,使用文本编辑器打开 ,修改文件中的 java_exe = 你安装的JDK中的java.exe的文件路径,打不开的问题是SDK Manager.exe找不到java.exe,此问题是我搭建环境时遇到的问题以及解决方法。 正常打开时,显示的界面如下: 在此处,我们需要选择我们开发时所需要的插件,我选择的插件如下图所示: 注意事项:我们只安装自己需要的插件即可。 在安装好这些插件后,我们开发所需要的SDK就配置好了
4.安装NDK
安装NDK没有什么操作,只需要把下载好的压缩包,解压至Qt的安装文件夹下,在Qt中配置好即可。 此处,我建议使用我百度网盘中提供的文件。 若我提供的文件有问题,可以选择下面网址自行下载
https://developer.android.google.cn/ndk/downloads/
自行下载需要注意NDK的版本问题,因为Qt对插件的版本支持有差异。 我推荐选择NDK版本为:android-ndk-r18b-windows-x86_64.zip
5.配置Qt中的设置
打开Qt 5.13.1,进入后,点击菜单栏中工具栏下的选项,在弹出的窗口中选择设备,如下图所示: 点击窗口中的Android进入配置页面,如图所示: 添加JDK、SDK、NDK的安装路径,看到所有选项都是对钩后,至此开发环境就搭建好了 如果没有都是绿色的勾勾,就说明前面的配置有问题,就需要检测自己安装的JDK、SDK和NDK。
6.第一个Android程序
1.创建工程
在首页点击,新建工程文件 点击Choose 名称注意事项:名名称和路径不能有中文,切记切记 点击下一步 点击下一步 点击下一步 注意勾上图中我勾选的选项,勾选后点击下一步 点击完成,项目创建完成
2.编写自己第一个Android程序
在main.cpp文件中添加如下代码,解决Qt应用在Android手机中显示比例不对的问题,实现自适应高分辨率(DPI)。
#if (QT_VERSION >= QT_VERSION_CHECK(5,9,0))
QApplication::setAttribute(Qt::AA_EnableHighDpiScaling);
#endif
放置在主函数中。
双击MainWindows.ui,添加一个QLabel组件,并在组件上添加文字
打开手机的USB调试选项(在手机开发者选项中),使用数据线将手机连接至电脑
点击Qt中的编译运行按钮,选择我的Android手机(三星 S10),手机USB模式选择MIDI后,
Qt中的工程,就会下载到手机上,成为手机上的一个APP
注意事项:此处都是问题说明,如果遇到问题可直接私信我
3.展示自己开发的蓝牙上位机软件
这是我做毕设所需的蓝牙控制软件,后续应该会出开发过程和源码,下面就来展示一下
获取资料可私信,看到就会回复。
参考文章:https://blog.csdn.net/rsd102/article/details/112133962
|