zoukankan      html  css  js  c++  java
  • [转]windows下和Ubuntu下adb找不到设备的解决方法

    最近在做flash手机项目,用fb选择android设备调试,总会出现找不到设备的情况。看了很多帖子都解决不了问题,后来终于研究出来是adb无法找到设备的问题。最后通知这篇帖子终于解决了问题。

    使用电脑连接android设置的时候,通常要做两步:1是安装USB驱动;2是启动adb工具。

    第一步比较简单,只要修改android驱动的配置文件android_winusb.inf,把你设备的VendorID跟ProductID加进去就行了。

    安装好驱动之后,启动adb devices的时候,很多的时候,我们找不到设备。

    出现这种情况主要是因为adb内建有一个知名的厂商ID列表,对于列表内的设备,adb可以直接连接,而不在列表中的设备,则不好意思,它会直接返回,这也就是为什么android设备的驱动已经安装好了,而adb连接不上的原因。。。

    悲剧的是,我们用的android大部分都修改了USB的厂商ID,而大部分的ID都未在google默认的列表里面啊,,,

    好在adb除了内建的一个列表之后,还有一个adb_usb.ini文件维护一下可信任的第三方厂商列表,,,

    Windows系统下,adb_usb.ini文件保存于用户路径下的.android文件夹内,

    C:UsersAdministrator.androidadb_usb.ini

     

    Ubuntu系统下的话,则是在你的用户目录下的.android目录

    ~.androidadb_usb.ini

    如果你的系统下没有这个文件,则需要新建一个,,,

    厂商ID也是就VID,windows可以在驱动的属性那里看到,而linux可以用lsusb看到。

    拿到设备的厂商ID直接加入到adb_usb.ini文件就可以了,

    fastboot找不到设备的话,会出现< waiting for device >的提示,由于它没有没有可配置的第三方文件,如果需要使用的话,可以用"-i"指定厂商ID。

    例如我使用全志的设备,它的VID是0x1f3a,那么可以这么写:

    fastboot -i 0x1f3a erase boot

    当然adb也有-i的参数指定厂商ID,但是如果每次都敲一次就太麻烦了,,,

    下面是一个adb_usb.ini文件的例子~

    0x18d1
    0x0bb4
    0x04e8
    0x22b8
    0x1004
    0x12D1
    0x0502
    0x0FCE
    0x0489
    0x413c
    0x0955
    0x091E
    0x04dd
    0x19D2
    0x0482
    0x10A9
    0x05c6
    0x2257
    0x0409
    0x04DA
    0x0930
    0x1F53
    0x2116
    0x0b05
    0x0471
    0x0451
    0x0408
    0x1d91
    0x040a
    0x143c
    0x1ebf
    0x23e6
    0x1e0e
    0x0525
    0x1219
    0x17EF
    0x2006
    0x22d9
    0x1C9E
    0x0B57
    0x24e3
    0x1bbb
    0x0F1C
    0x0414
    0x2420
    0xE040
    0x1D4D
    0x0E79
    0x1662
    0x1F3A
  • 相关阅读:
    RecSys Challenge 2015
    Python 多行注释
    编译型语言与解释型语言
    vs2012 提示 未能正确加载 "Visual C++ Language Manager Package" 包
    人工智能 VS 机器学习 VS 深度学习
    CV-视频分析:静态背景下的运动检测
    消费者做出购买决策的流程
    Fat jar用途
    Eclipse中打包插件Fat Jar的安装与使用
    Eclipse将引用了第三方jar包的Java项目打包成jar文件的两种方法
  • 原文地址:https://www.cnblogs.com/leoin2012/p/4475991.html
Copyright © 2011-2022 走看看