android recovery下使用adb出现device offline问题
进入recovery后,执行adb devices,提示device offline。
说明设备的USB口是device role了,但adb server跟device通信不上。
对比了网上很多文章,各种修改都无法解决。
于是,将adb和adbd和adb driver的log打开。
//system/core/adb
//kernel-3.18/drivers/usb/gadget/f_adb.c
发现adb driver的读写都没有调用,于是在adb代码里寻找打开adb driver “/dev/android_adb”的地方,一步步跟踪,到了问题点:
system\core\adb\usb_linux_client.cpp
void usb_init()
{
if (access(USB_FFS_ADB_EP0, F_OK) == 0)
usb_ffs_init();
else
usb_adb_init();
}
能正常连接adb的走usb_adb_init();,而不能正常连接的走usb_ffs_init();
#define USB_FFS_ADB_PATH "/dev/usb-ffs/adb/"
#define USB_FFS_ADB_EP(x) USB_FFS_ADB_PATH#x
#define USB_FFS_ADB_EP0 USB_FFS_ADB_EP(ep0)
也就是说,不能正常连接adb的是因为access(USB_FFS_ADB_EP0, F_OK)成功了,
经过对比,recovery下的bootable/recovery/etc/init.rc 多了下面几行:
on fs
write /proc/bootprof "start mobicore (on fs)"
//....
mkdir /dev/usb-ffs 0770 shell shell
mkdir /dev/usb-ffs/adb 0770 shell shell
mount functionfs adb /dev/usb-ffs/adb uid=2000,gid=2000
这就导致设备的adbd执行的是ffs初始化,而不是adb初始化的原因。
屏蔽上面几行,连接adb成功。显示:
$ adb devices
List of devices attached
0123456789ABCDEF recovery
android recovery下使用adb出现device offline问题相关推荐
- adb.exe: device offline
adb devices 的时候提示:adb.exe: device offline 处理方法: 1 adb kill-server 2 adb start-server 3 重新连接adb
- Android Recovery 下打开驱动接口
Android 下Recovery是跟system等级别的一层,只不过recovery下实现了简单的UI. 如目录下有bootable\recovery\fonts, minui,简单的字库和图形显示 ...
- Android开发--真机调试出现device offline提示
解决方法1: 打开终端输入以下命令 adb devices 如下图所示: 解决办法2:打开终端输入以下命令 1.adb kill-server 2.adb start-server 3.adb ...
- Android recovery支持adb shell
Android recovery支持adb shell 最近开发过程注意到recovery不支持adb shell,为了便于调试方便,决定增加此功能. 刚开始我们采用的是user版本系统,进入reco ...
- recovery模式下支持ADB连接和串口操作
前言 Android平台下我们有时候会进入recovery下做一些操作,不管是通过ADB连接还是通过串口操作,都需要你的平台支持,不支持的话可以按照我们这篇文章进行修改. 正文 ADB连接 进入rec ...
- adb device offline 解决办法
当电脑中的豌豆荚之类的应用打开的状态下 adb devices 显示连接状态 关闭手机助手之后,adb devices总显示 device offline 后来发现sdk platform-tool ...
- [转]Mac OS X 下部分Android手机无法连接adb问题之解决方案
时至当今,Android山寨手机厂商已如此之多,能修改和个性化定制Android OS的能人已是多如牛毛,有的牛人修改Android系统只会影响所修改的点,不会影响其它,然后还有的就不多说了,总之做的 ...
- (转载)Mac系统下利用ADB命令连接android手机并进行文件操作
Mac系统下利用ADB命令连接android手机并进行文件操作 标签: Mac adb android 2016-03-14 10:09 5470人阅读 评论(1) 收藏 举报 分类: Androi ...
- android adb shell device not found 或 adb devices 无设备
当前项目由于需要使用手机USB接口连接一个外设, 所以想用WIFI连接电脑进行调试, 但是在cmd中始终找不到设备: adb shell "device not found" a ...
最新文章
- 设计模式之外观模式(Facade)摘录
- python stm32-实现Python与STM32通信方式
- 【数据库】MongoDB数据库的操作及练习
- 一个软件项目的总纲性的测试计划叫什么?
- 归纳:数据库设计的六个阶段详解(有这一篇就够了)
- Java学习笔记2021.1.9
- 基础表比商户对账和汇总多了一笔退款数据
- 转https_这个PDF转图片技巧,不用1分钟就能快速上手
- 使用IntelliJ IDEA配置Erlang开发环境
- stdafx.h头文件代码
- Pulling without specifying how to reconcile divergent branches is discouraged.
- 07-提取字符串中的数字数组
- 硬件描述语言Verilog学习(五)
- Tomcat 的三种(bio,nio.apr) 高级 Connector 运行模式
- 无胁科技-TVD每日漏洞情报-2022-11-30
- java基础-多态-多态的理解及使用
- pmp考试需要备考多长时间?
- 八 EUI高级制作 ① 初认识
- Python学习:字典(dictionary)
- ibm 行业解决方案_使用针对电源系统的IBM地理分散弹性解决方案的灾难恢复即服务(DRaaS)产品...
热门文章
- android studio的旅游APP的开发和设计
- excel计算式自动计算_计算macd 分解步骤一步一步详细计算macd 用excel计算macd
- 二进制bit0是什么意思_阜平吧在讨论5G的问题,感觉挺有意思,科普下……
- 物理层 ,物理层功能,物理层设备,通信方式,物理层传输介质
- 2022淘宝天猫京东双十一交易额有多少?双11交易的数据
- evplayer android闪退,Evplayer优弊端汇总
- opencv 视频处理(python)
- 手机闪存速度测试工具,AndroBench
- 天梯赛 L2-016 愿天下有情人都是失散多年的兄妹 (25 分)[测试点1 3 4][未填坑]
- Mac免费思维导图软件:幕布 for mac