Ubuntu18.04下QT开发Android无法连接设备问题解决实现


Posted in Java/Android onJune 01, 2022

1. 需求

在Linux环境下搭建QT的Android开发环境,开发了一款APP想部署安装在实体手机设备上。

Linux版本: ubuntu18.04 64位,运行在虚拟机环境下。

QT版本: 5.12.6

测试手机: 小米10至尊版

系统版本是: Android 11

error: insufficient permissions for device: user in plugdev group; are your udev rules wrong?

2. 问题现象

(1)虚拟机里连接上手机设备之后,QT里选择Android套件进行编译部署,弹窗选项框选择设备,这时提示"ABI"不支持。 无法选择自己的手机设备。

Ubuntu18.04下QT开发Android无法连接设备问题解决实现

(2)使用adb命令查看设备列表时,提示权限不足

wbyq@wbyq:~/work_pc/AndroidPath/android-sdk-linux/platform-tools$ adb devices
List of devices attached
4bda00bf	no permissions (user in plugdev group; are your udev rules wrong?); see [http://developer.android.com/tools/device.html]
                                                                                     
                                                                                     wbyq@wbyq:~/work_pc/AndroidPath/android-sdk-linux/platform-tools$ sudo ./adb remount
error: insufficient permissions for device: user in plugdev group; are your udev rules wrong?
See [http://developer.android.com/tools/device.html] for more information

(3)一般挂载不上Android设备解决办法

在终端输入以下 3 条命令:
adb kill-server
adb start-server
adb remount
再使用 adb devices 和 adb shell 就可以使用 android adb 功能了。

adb命令所在的路径:

/home/wbyq/work_pc/AndroidPath/android-sdk-linux/platform-tools

如果使用adb命令时,提示权限不足问题,请看下面解决办法。

3. 解决办法

(1)先将Android手机的开发者选项打开。一般手机的开启方法: 找到系统设置、系统参数里,找到系统版本的参数选项,快速点击5~7次,即可打开开发者选项设置,回到上一级页面,选择更多设置,就能看到开发者选项,然后开启USB调试选项即可。

(2)将手机连接到电脑上,再挂载到虚拟机里,点击右下角即可连接进虚拟机。

Ubuntu18.04下QT开发Android无法连接设备问题解决实现

(3)在命令行运行lsusb命令,扫描设备是否连接成功

wbyq@wbyq:~/work_pc/AndroidPath/android-sdk-linux/platform-tools$ lsusb
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 014: ID 18d1:4ee7 Google Inc. 
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 003: ID 0e0f:0002 VMware, Inc. Virtual USB Hub
Bus 002 Device 002: ID 0e0f:0003 VMware, Inc. Virtual Mouse
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
wbyq@wbyq:~/work_pc/AndroidPath/android-sdk-linux/platform-tools$

Ubuntu18.04下QT开发Android无法连接设备问题解决实现

如果设备扫描到,那么接下来就简单了。

(4)添加权限文件

$ cd /etc/udev/rules.d/ 
$ sudo vim 51-android.rules

加入以下内容,保存:

SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", MODE="0666"

Ubuntu18.04下QT开发Android无法连接设备问题解决实现

(5)再次执行adb devices命令,即可扫描到设备

android-sdk-linux/platform-tools$ adb devices
List of devices attached
4bda00bf	device

Ubuntu18.04下QT开发Android无法连接设备问题解决实现

如果这一步能扫描到设备,那么打开QtCreator 再次选择Android套件,选择编译部署,就可以扫描到自己的手机了。

(6)最终解决效果

Ubuntu18.04下QT开发Android无法连接设备问题解决实现

选择之后,这时手机上会弹出USB调试授权选项框,点击确认即可。

Ubuntu18.04下QT开发Android无法连接设备问题解决实现

(7)QT在安装部署过程中,进度条大概到一半的时候,手机上会弹出是否安装 应用,记得点击继续安装

Ubuntu18.04下QT开发Android无法连接设备问题解决实现

到此这篇关于Ubuntu18.04下QT开发Android无法连接设备问题解决实现的文章就介绍到这了,更多相关QT Android无法连接设备内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!


Tags in this post...

Java/Android 相关文章推荐
JPA如何使用entityManager执行SQL并指定返回类型
Jun 15 Java/Android
解决Swagger2返回map复杂结构不能解析的问题
Jul 02 Java/Android
Java实现聊天机器人完善版
Jul 04 Java/Android
spring boot中nativeQuery的用法
Jul 26 Java/Android
springboot 启动如何排除某些bean的注入
Aug 02 Java/Android
java objectUtils 使用可能会出现的问题
Feb 28 Java/Android
Java 超详细讲解ThreadLocal类的使用
Apr 07 Java/Android
Java Spring Lifecycle的使用
May 06 Java/Android
SpringBoot全局异常处理方案分享
May 25 Java/Android
Android RecyclerView实现九宫格效果
Jun 28 Java/Android
Java多线程并发FutureTask使用详解
Jun 28 Java/Android
app场景下uniapp的扫码记录
Jul 23 Java/Android
openGauss数据库JDBC环境连接配置的详细过程(Eclipse)
Jun 01 #Java/Android
Java中生成微信小程序太阳码的实现方案
Jun 01 #Java/Android
Java处理延时任务的常用几种解决方案
Java实现添加条码或二维码到Word文档
Jun 01 #Java/Android
Spring IOC容器Bean的作用域及生命周期实例
May 30 #Java/Android
spring IOC容器的Bean管理XML自动装配过程
May 30 #Java/Android
利用正则表达式匹配浮点型数据
May 30 #Java/Android
You might like
PHP分多步骤填写发布信息的简单方法实例代码
2012/09/23 PHP
单点登录 Ucenter示例分析
2013/10/29 PHP
PHP网页游戏学习之Xnova(ogame)源码解读(二)
2014/06/23 PHP
php通过function_exists检测函数是否存在的方法
2015/03/18 PHP
浅析PHP7的多进程及实例源码
2019/04/14 PHP
javascript对象之内置对象Math使用方法
2010/04/16 Javascript
浅析jQuery1.8的几个小变化
2013/12/10 Javascript
Extjs grid添加一个图片状态或者按钮的方法
2014/04/03 Javascript
使用jQuery异步加载 JavaScript脚本解决方案
2014/04/20 Javascript
深入理解Javascript中this的作用域
2014/08/12 Javascript
使用js Math.random()函数生成n到m间的随机数字
2014/10/09 Javascript
JS实现转动随机数抽奖特效代码
2020/04/16 Javascript
jquery实现简单实用的轮播器
2017/05/23 jQuery
JS实现上传图片的三种方法并实现预览图片功能
2017/07/14 Javascript
微信小程序“摇一摇”的实例代码
2017/07/20 Javascript
js实现方块上下左右移动效果
2017/08/17 Javascript
详解使用nvm管理多版本node的方法
2017/08/30 Javascript
JS二级菜单不同实现方法分析【4种方法】
2018/12/21 Javascript
微信小程序实现定位及到指定位置导航的示例代码
2019/08/20 Javascript
vue 开发企业微信整合案例分析
2019/12/02 Javascript
简单的Python的curses库使用教程
2015/04/11 Python
python抓取网页中图片并保存到本地
2015/12/01 Python
Python的Django REST框架中的序列化及请求和返回
2016/04/11 Python
Python简单实现两个任意字符串乘积的方法示例
2018/04/12 Python
django框架之cookie/session的使用示例(小结)
2018/10/15 Python
Pyqt5如何让QMessageBox按钮显示中文示例代码
2019/04/11 Python
Python实现插入排序和选择排序的方法
2019/05/12 Python
浅谈Python访问MySQL的正确姿势
2020/01/07 Python
pandas读取csv文件提示不存在的解决方法及原因分析
2020/04/21 Python
详解基于Facecognition+Opencv快速搭建人脸识别及跟踪应用
2021/01/21 Python
amazeui树节点自动展开折叠面板并选中第一个树节点的实现
2020/08/24 HTML / CSS
美国值得信赖的婚恋交友网站:eHarmony
2018/10/04 全球购物
计算机应用应届生求职信
2014/07/12 职场文书
接收函格式
2015/01/30 职场文书
故宫导游词
2015/01/31 职场文书
python机器学习创建基于规则聊天机器人过程示例详解
2021/11/02 Python