目的

为了释放出USB口, 而使用网线进行软件调试.

进入命令行 adb shell

如果adb已经加入环境变量中, 并且设备的adbd已开启, 那么, windows在cmd下输入adb shell可进入设备的shell模式. shell模式下可进行用户设备上的一些操作, 如setprop.

文章一 adb环境

    Android较熟悉的开发人员,对adb通过USBUSB连接Android设备)调试Android设备应该不会陌生,因为大部分资料都是这样做的。但是假如你的 Android设备没有USB口,只有网口,能不能调试呢?(比如移植过程中通过NFS启动的Android系统,再比如你的设备上面USB设备匮乏。)答案是肯定的。本文我将以我最近的经验,介绍一下adb怎样通过tcp/ip来调试Android设备。

        adb早期版本只能通过USB来对设备调试,从adb v1.0.25开始,增加了对通过tcp/ip调试Android设备的功能。

如果你想adb通过tcp/ip来调试设备,必须要满足如下条件:

1、设备上面首先要有网口。没有网口,那就是“巧妇难为无米之炊”了。

2、设备和研发机(PC机)已经接入局域网,并且设备设有局域网的IP地址。

3、要确保研发机和设备能够相互ping得通。

4、研发机已经安装了Android SDK(要确保SDK版本是2.0之后的版本)。(确保有相应的环境变量,adb在sdk的platform-tools目录下,所以要将platform-tools所在地路径加入path环境变量中)

5、检查研发机上的adb的版本,是否是1.0.25之后的版本。方法就是在cmd(windows)或者shell(linux)中敲入adb,回车,显示帮助,第一行就是adb版本信息。

6、确保Android设备中adbd进程(adb的后台进程)已经运行。adbd进程将会监听端口5555来进行adb连接调试。

 

 

 本文假设设备的ip为192.168.1.5,下文将会用这个IP建立adb连接,并调试设备。

1、首先Android设备需要先启动,如果可以话,可以确保一下adbd启动。

2、在研发机的cmd中,输入:

adb connect 192.168.1.5:5555

如果连接成功会进行相关的提示,如果失败的话,可以先kill-server命令,然后重试连接。

adb kill-server

3、如果连接已经建立,在研发机中,可以输入adb相关的命令进行调试了。比如adb shell,将会通过tcp/ip连接设备上面。和USB调试是一样的。这里就不多说了。

4、调试完成之后,在研发机上面输入如下的命令断开连接:

adb disconnect 192.168.1.5:5555

     这样就通过TCP/IP完成了对Android设备的调试工作了,希望对大家有所帮助。如有错误的地方,请不吝指教。

   下面通过学校开发板sep6200介绍下:首先查看板子静态ip地址,在kernel/root/init.djstjava.sh脚本中,如下

#!/system/bin/sh

ifconfig eth0 172.20.106.149 netmask255.255.255.0 up

route add default gw172.20.106.146 dev etho

上面脚本中172.20.106.149为板子ip,172.20.106.146为pc机ip。

启动android后,在pc终端输入adb connect 172.20.106.149,连接成功后输入adb shell即可。

 

 

文章二 设置adbd监听端口

Android的 adb服务默认情况下监听USB,一般我们在开发中是通过USB连接到目标机上。但是如果目标机只有一个USB口,我们又需要把这个USB用于其它目的 (比如用于OTG口插U盘)的时候怎么办?其实adb是支持通过网络访问的,在需要的时候,只需按下列步骤操作即可通过网络连接adb服务。

    (1)首先还是正常地通过USB连接目标机,在windows cmd下执行adb shell进入

    (2)设置adb监听端口: #setprop service.adb.tcp.port 5555

    (3)通过ps命令查找adbd的pid

    (4)重启adbd#kill -9,这个pid就是上一步找到那个pid

    杀死adbd之后,android的init进程后自动重启adbdadbd重启后,发现设置了service.adb.tcp.port,就会自动改为监听网络请求(这时就不能通过USB连上去了)。这时需要在开发主机上通过下列命令连接到目标机:

    adb connect:www.2cto.com

    这个ip是你目标机的IP地址,port是上面第2步设置的端口号(上面的例子中设的是5555,当然你也可以改成其它值)。

   这之后就可能正常进行软件调试了。这时USB接口已经空出来可以作为他用了。

文章三

要用网络调试Android需要设备已经获取root权限

 

如果手机没有命令行工具,就先用usb线连接,输入命令:

$su

#stop adbd

#setprop service.adb.tcp.port 5555

#start adbd

 

adb命令:

#adb connect <手机ip地址(端口默认是5555)>

这时手机已经和电脑连上了,用adb devices看看有没有连上手机,如果没有就adb kill-server后重新connect

可以直接用eclipse中的DDMS窗口对手机进行调试

如果需要进入adb shell,直接在命令行输入adb shell

 

 

关闭网络调试也很简单,在手机命令中输入命令:

$su

#stop adbd

#setprop service.adb.tcp.port 0

#start adbd

 

总结 adb网络调试总结

adb网络调试总结:

ADB网络调试.

   可行. 但是重启后又要重新来.

   方法是在USB调试模式下, 在cmd命令提示符下输入adbshell

   #setprop service.adb.tcp.port 5555

   #ps

   #kill (adbd pid)

   cmd下

   adb connect 192.168.30.78:5555

   OOOKKK

更多相关文章

  1. android studio调试c/c++代码
  2. android(NDK+JNI)---Eclipse+CDT+gdb调试android ndk程序
  3. android 零星调试笔记
  4. Android的网络状态判断
  5. MTK Android(安卓)Driver:led
  6. Android获取设备唯一标识完美解决方案
  7. Android(安卓)Studio 3.0开始android Device Monitor弃用
  8. Android打开/关闭数据流量
  9. 重定向android log

随机推荐

  1. Kotlin(Hello World)
  2. Android内容提供者(Content provider)
  3. Android(安卓)working with Volley
  4. 实现一个简单Retrofit(一)
  5. Android(安卓)SDK Manager 安装和使用国
  6. Android布局排版
  7. SharedPreferences保存文件及文件读取
  8. Android定时任务采用AlarmManager来实现,
  9. 【已验证】android studio 打包报 Missin
  10. 【Android】ContentValues的用法