电子工程师技术服务社区
公告
登录
|
注册
首页
技术问答
厂商活动
正点原子
板卡试用
资源库
下载
文章
社区首页
文章
Windows下基于Qt开发Android应用
分 享
扫描二维码分享
Windows下基于Qt开发Android应用
Qt
ANDROID
上位机
嵌入式从0到1
关注
发布时间: 2021-01-04
丨
阅读: 1427
作为一个嵌入式工程师,会一个上位机编程语言还是很有必要的,这里推荐各位有精力的学习一下Qt 。 学习Qt的优势: 1. 学习的人多,资料相对丰富 2. 拖拽控件即可完成界面设计,简单易用 3. 最大的优势:跨平台 本次网文分享一下Qt下Android软件开发环境的搭建,完成本文的配置,可以完成Qt Windows和Android平台下的软件开发。 ### 所需软件 ![](https://img-blog.csdnimg.cn/20210103133723496.png) ### 安装 Qt 5.13.2 `qt-opensource-windows-x86-5.13.2.exe` 软件下载链接: ``` http://download.qt.io/archive/qt/5.13/5.13.2/ ``` 双击 `qt-opensource-windows-x86-5.13.2.exe` 进入安装界面,其中有如下所示一步需要输入Qt 账号,如果不想输入账号信息,可以在断网状态下进行安装。 ![](https://img-blog.csdnimg.cn/20210103133738654.png) 我在断网的情况下,默认安装,在下面一步,具体选项如下所示: ![](https://img-blog.csdnimg.cn/20210103134153121.png) 如果电脑空间富余,建议`全选`安装。 然后默认下一步继续安装至结束。 ### 安装SDK、NDK、JDK #### SDK下载 SDK 下载链接: ``` https://www.androiddevtools.cn/ ``` ![](https://img-blog.csdnimg.cn/20210103134217388.png) #### NDK下载 NDK 下载链接: ``` https://developer.android.google.cn/ndk/downloads/ ``` ![](https://img-blog.csdnimg.cn/20210103134246451.png) #### 解压SDK和NDK ![](https://img-blog.csdnimg.cn/20210103134259751.png) 打开`SDK Manager.exe` 软件: ![](https://img-blog.csdnimg.cn/20210103134306759.png) 我的SDK安装如下内容: ![](https://img-blog.csdnimg.cn/20210103134317237.png) #### 安装JDK JDK 软件下载链接: ``` https://www.oracle.com/technetwork/java/javase/downloads/index.html ``` 默认下一步安装JDK,安装完目录结构如下。 ![](https://img-blog.csdnimg.cn/20210103134333249.png) `注意:Qt Android 环境对SDK 、 NDK、 JDK版本要求较高,建议选择上述已验证过环境。` ### Qt 创建工程 #### 新建工程 选择`Qt Widgets Application` , 选择 `Choose` 进入下一步。 ![](https://img-blog.csdnimg.cn/20210103134342443.png) 填写工程名称并选择工程所在路径: ![](https://img-blog.csdnimg.cn/20210103134353973.png) 构建工具选择 `qmake` 即可。 ![](https://img-blog.csdnimg.cn/20210103134406523.png) `Base class` 随便选一个皆可: ![](https://img-blog.csdnimg.cn/20210103134418702.png) 构建套件(Kits)选择: ![](https://img-blog.csdnimg.cn/20210103134430983.png) 选择版本控制工具,如果无,选择默认即可,点击`完成`。 ![](https://img-blog.csdnimg.cn/20210103134443287.png) 在`main.cpp`文件中添加如下代码,解决Qt应用在Android手机中显示比例不对的问题,实现自适应高分辨率(DPI)。 ``` #if (QT_VERSION >= QT_VERSION_CHECK(5,9,0)) QApplication::setAttribute(Qt::AA_EnableHighDpiScaling); #endif ``` ![](https://img-blog.csdnimg.cn/20210103134456296.png) 双击`.ui`文件,进入UI设计界面: ![](https://img-blog.csdnimg.cn/20210103134507171.png) 在UI设计界面添加一`Label` ,修改其字体和文本。 ![](https://img-blog.csdnimg.cn/20210103134520252.png) Android手机通过数据线连接至电脑,开启`开发人员选项->USB 调试`,点击`运行` 。 在弹出对话框中,选择咱们的手机: ![](https://img-blog.csdnimg.cn/20210103134533696.png) ### 运行结果 手机端提示安装软件,安装完毕之后,运行效果如下: ![](https://img-blog.csdnimg.cn/20210103134545947.png) ### 可能遇到的问题 #### 问题一:工具集中无Android选项 创建Android应用报错:`Android has not been configured. Create Android kits` 。 ![](https://img-blog.csdnimg.cn/20210103134602484.png) 点击上图中的`Configure`按钮进入如下配置界面,配置`JDK location` 、`Android SDK的路径` 和 `Android NDK的路径` ,具体配置如下: ![](https://img-blog.csdnimg.cn/20210103134612933.png) 选择菜单 `工具-->选项` 也可以进入上面的配置界面。 ![](https://img-blog.csdnimg.cn/20210103134623509.png) #### 问题二:SDK软件包安装缓慢 选择`Tools-->Options` : ![](https://img-blog.csdnimg.cn/20210103134638215.png) 更新代理: ![](https://img-blog.csdnimg.cn/20210103134736616.png) #### 问题三:初次编译下面步骤可能很慢 下面过程很慢,耐心等待即可。 ![](https://img-blog.csdnimg.cn/2021010313513523.png) #### 问题四:程序如何在Windows下运行 在 `项目` 中,重新选择工具集为 `Desktop Qt 5.13.2 MinGW 64-bit` 。 ![](https://img-blog.csdnimg.cn/20210103135151982.png) 重新运行,具体显示效果如下: ![](https://img-blog.csdnimg.cn/20210103135202711.png) ----- 2021年,Qt 我们一起学起! 本公众号的2021年网文内容包括但不限于STM32、单片机、鸿蒙、Qt、小程序,欢迎感兴趣的朋友,持续关注。 2020年的网文汇总如下: [**感谢有你,一路同行,历史文章汇总**](https://mp.weixin.qq.com/s/iyAfjPhD_4mynIklgmhNtw) ### 资料获取 文章涉及软件,公众号后台回复关键字: **Qt&Android** 获取。 ### 欢迎关注 程序员小哈带你玩转嵌入式,微信搜索:**嵌入式从0到1**,更多干货等着你。 也可以进入小哈哥的个人博客:www.xiaohage.com 获取更多内容。
原创作品,未经权利人授权禁止转载。详情见
转载须知
。
举报文章
点赞
(
0
)
嵌入式从0到1
关注
评论
(0)
登录后可评论,请
登录
或
注册
相关文章推荐
MK-米客方德推出工业级存储卡
Beetle ESP32 C3 蓝牙数据收发
Beetle ESP32 C3 wifi联网获取实时天气信息
开箱测评Beetle ESP32-C3 (RISC-V芯片)模块
正点原子数控电源DP100测评
DP100试用评测-----开箱+初体验
Beetle ESP32 C3环境搭建
【花雕体验】16 使用Beetle ESP32 C3控制8X32位WS2812硬屏之二
X
你的打赏是对原创作者最大的认可
请选择打赏IC币的数量,一经提交无法退回 !
100IC币
500IC币
1000IC币
自定义
IC币
确定
X
提交成功 ! 谢谢您的支持
返回
我要举报该内容理由
×
广告及垃圾信息
抄袭或未经授权
其它举报理由
请输入您举报的理由(50字以内)
取消
提交