【Qt 学习之路】Qt Android开发环境搭建:Ubuntu的Vmware虚拟机中的踩坑实录

文章目录

1、简介

许久未曾使用Qt进行Android开发,今日在Ubuntu系统的虚拟机(VM)中搭建开发环境时,着实遭遇了不少棘手问题。接下来,我将详细分享此次搭建过程中遇到的各类"坑"及其解决方案,希望能为有同样需求的开发者提供参考。

  • 虚拟机内USB设备识别难题

    在开发过程中,需要将Android手机与开发环境连接以进行调试。然而,我遇到了一个颇为棘手的问题:Ubuntu系统能够正常识别通过USB连接的手机设备,但在虚拟机内的Windows系统中,手机却"隐身"了,无法被识别。这一状况直接阻碍了后续的调试工作,让我一度陷入困境。

  • Gradle下载速度缓慢之困

    在搭建环境时,默认配置需要下载gradle-5.5.1-bin.zip文件。但下载过程极其缓慢,进度条也没有一个,只能通过任务管理器中的网络来查看下载速度,几乎停滞不前。这不仅严重影响了开发效率,还让我对能否顺利完成环境搭建产生了担忧。

针对上述这些问题,本文后续部分将逐一进行深入剖析,并给出切实可行的解决办法。无论是正在为类似问题苦恼的开发者,还是计划在虚拟机中搭建Qt Android开发环境的新手,都能从本文中找到有价值的参考信息。

2、虚拟机内USB设备识别难题

2.1、正确连接手机

开展Qt Android开发调试,先正确用USB连接手机和电脑,选好质量佳的数据线,保证Ubuntu能识别手机。连接好后,在Ubuntu终端输入 lsusb 命令,查看设备ID,确认Ubuntu已识别手机,再进行后续操作

以下是插入手机前后对比,可以看到多了一个华为的手机设备。

2.2、打开USB相关配置

2.3、打开虚拟机中的手机设备

最关键的是这一步!

在VMware中依次打开

VM → Removable Devices → 你的手机设备(例如:HuaWei XXX) → connect 连接

如果你的虚拟机中显示手机的相关信息就成功了

3、Gradle下载速度缓慢之困

3.1、下载 Gradle 镜像

当前可用阿里云相关镜像:
https://mirrors.aliyun.com/gradle/gradle-5.5.1-bin.zip

3.2、安放镜像位置

打开windows的gradle缓存目录,因系统而已这里:

bash 复制代码
%APPDATA%\QtProject\gradle

默认是没有gradle的,需要手动建一个,然后把gradle的zip包复制到该目录。

3.3、修改项目中的gradle路径

Qt Creator 默认从 .gradle/wrapper/dists/ 目录读取 Gradle。

打开你自己的项目中的文件夹,修改配置文件。如果项目中的 gradle-wrapper.properties 文件未修改 distributionUrl,Qt 会继续尝试从官方服务器下载。

例如我的是:

bash 复制代码
build-RockerAndButton-Android_for_armeabi_v7a_arm64_v8a_x86_x86_64_Clang_Qt_5_14_2_for_Android-Debug\android-build\gradle\wrapper

找到"gradle-wrapper.properties",将 distributionUrl 指向本地文件路径,例如:

bash 复制代码
distributionUrl=file:///C:/Users/<用户名>/AppData/Roaming/QtProject/gradle/gradle-5.5.1-bin.zip

这样就可以应用本地的Gradle构建了

相关推荐
anzhxu1 小时前
QT数据库(三):QSqlQuery使用
数据库·qt·oracle
nap-joker2 小时前
【多模态解耦】DecAlign:用于解耦多模态表示学习的分层跨模态对齐
学习·多模态融合·最优传输·多模态表征学习·特征解耦·音频+图像+文本·原型引导
hnlgzb2 小时前
常见的Android Jetpack库会有哪些?这些库中又有哪些常用类的?
android·android jetpack
551只玄猫2 小时前
【数据库原理 实验报告1】创建和管理数据库
数据库·sql·学习·mysql·课程设计·实验报告·数据库原理
IDZSY04303 小时前
AI社交平台进阶指南:如何用AI社交提升工作学习效率
人工智能·学习
happymaker06263 小时前
web前端学习日记——DAY05(定位、浮动、视频音频播放)
前端·学习·音视频
xuhaoyu_cpp_java3 小时前
过滤器与监听器学习
java·经验分享·笔记·学习
炽烈小老头3 小时前
【 每天学习一点算法 2026/03/23】数组中的第K个最大元素
学习·算法·排序算法
钛态5 小时前
Flutter 三方库 http_mock_adapter — 赋能鸿蒙应用开发的高效率网络接口 Mock 与自动化测试注入引擎(适配鸿蒙 HarmonyOS Next ohos)
android·网络协议·flutter·http·华为·中间件·harmonyos