zoukankan      html  css  js  c++  java
  • Android开发环境配置:利用实体pad进行程式调试

    参考网页:
    http://www.njpro.cn/forum.php?mod=viewthread&tid=111
    http://stackoverflow.com/questions/2604727/how-can-i-connect-to-android-with-adb-over-tcp
    http://forum.xda-developers.com/showthread.php?t=1071584

    方法一:利用USB连接线进行连接
    1. 利用lsusb查看USB连接设备的idVendor
       可以查到,ASUS 的TF101的idVendor是:0b05
    2. 在ubuntu下,第一次连入实体机进行调试会发现ubuntu无法识别到android手机。
       需要进行的设置是:

       1. Log in as root and create this file: /etc/udev/rules.d/51-android.rules.
          For Gusty/Hardy, edit the file to read:
          SUBSYSTEM=="usb", SYSFS{idVendor}=="0bb4", MODE="0666"

          For Dapper, edit the file to read:
          SUBSYSTEM=="usb_device", SYSFS{idVendor}=="0bb4", MODE="0666"
       2. Now execute:
          chmod a+r /etc/udev/rules.d/51-android.rules

       在 Ubuntu Linux 中用源码文件安装软件时经常都会用到chmod命令来更改文件的权限使其在安装时有执行的权限。
    3. 安装设备的驱动程式(因为我使用的Ubuntu系统,驱动难以找到和安装,所以没有使用USB进行连接而使用了下面的方法二)
    4. 执行adb connect 192.168.XXX.XXX,就可以连接到设备了。

    方法二:利用wifi网路进行连接
    1. pad和PC机已经接入局域网,并且处在同一个网段,可以ping的通。
    2. PC机已经安装了Android SDK(要确保SDK版本是2.0之后的版本)。
    3.  检查PC机上的adb的版本,是否是1.0.25之后的版本。方法就是在shell中敲入adb,回车,显示帮助,第一行就是adb版本信息。
        (如果出现bash: adb: command not found,请参照后面的说明设定系统的PATH参数)
    4.  查看PAD的ip地址,adb connect 192.168.XXX.XXX
       如果返回 connected to 192.168.XXX.XXX:5555,说明连接已经成功。
    5. 利用 adb devices 可以查看目前可以连接的设备。
    6. 如果失败的话,可以先kill-server命令,然后重试连接。
      adb kill-server
    7. 调试完毕,断开连接可以用adb disconnect 192.168.XXX.XXX:5555

    注意:上述两种方法都需要把pad设置成为开发的usb可调试状态。

    常见问题一:
    我使用的是ViewSonic 10s和ASUS TF101的pad进行调试,而这两款pad默认没有打开adbd的5555监听端口,会出现
    adb connect 192.168.XXX.XXX无法连接的情况。
    原因是:在adbd启动时首先检查是否设置了service.adb.tcp.port,如果设置了,就是使用TCP作为连接方式;
            如果没设置,就去检查是否有 adb的USB设备(dev/android_adb),如果有就用USB作为连接方式;
            如果没有USB设备,则还是用TCP作为连接方式。
    解决办法:需要对pad进行破解,拿到root权限,设置service.adb.tcp.port
    破解使用软件使用z4root,将apk安装包安装到pad中。很好用。
    因为我使用的pc系统没有安装pad驱动,如果有安装驱动的各位可以利用usb和pad连接,使用adb shell进入pad的命令行,su后拿到root权限。
    我又下载了Better_Terminal_Emulator_Pro_3.14.apk安装包,一个android的命令行程式。执行su拿到root权限。
    执行下面的语句:(好像也可以通过设置init.rc文件进行修改)
    setprop service.adb.tcp.port 5555
    stop adbd
    start adbd
    这样就已经设置了 service.adb.tcp.port为5555(不知道为什么,我执行了多次才成功,至今不明原因)
    执行adb connect 192.168.XXX.XXX就可以连接到pad了。
    也可以通过下面的语句,让pad恢复到监听usb的状态
    setprop service.adb.tcp.port -1
    stop adbd
    start adbd
    下面还有一段,目前没有用到
    ================================================
    If you have USB access already, it is even easier to switch to using WiFi.
    From a command line on the computer that has the device connected via USB, issue the commands

    adb tcpip 5555
    adb connect 192.168.0.101:5555

    To tell the ADB daemon return to listening over USB

    adb usb

    There are also several apps on the Android Market that automate this process.
    =================================================
    常见问题二:
    执行sdb,出现bash: adb: command not found
    sudo gedit ~/.bashrc
    修改为:
    export PATH=${PATH}:/home/ray/android-sdks/tools:/home/ray/android-sdks/platform-tools
    问题解决,可以查看adb的版本。

    ctrl+c退出ping命令
    ifconfig -a 可以查询ip 结果 192.168.1.79 可是为什么ping不同平板呢?

    **Android wifi网卡ip如何设置?  设置->无线控制->WI-FI 设置->点击键盘上Menu菜单键->高级-> that's here !(此方法为设置pad固定IP)

    ----------------------------------------------------

    Ubuntu 下識別所有設備的方法:在/etc/udev/rules.d/51-android.rules 中添加

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

  • 相关阅读:
    二叉树——数组的异或和
    二叉树——最长子数组累加和
    二叉树——平衡二叉搜索树 TreeSet, TreeMap
    二叉树——大楼的轮廓线
    数据结构--Morris遍历--二叉树的遍历
    数据结构--单调栈--烽火台
    数据结构--单调栈--求最大子矩阵的大小
    数据结构--单调栈--构造数组的MaxTree
    数据结构--单调栈结构
    字符串的压缩和解压缩
  • 原文地址:https://www.cnblogs.com/sipher/p/2433511.html
Copyright © 2011-2022 走看看