用真机做远程调试的两种方式

很多人在android 开发调试的时候会碰到这样一个问题,把手机和电脑通过USB连接上后两边都没有提示.重启手机和电脑还是有没有反应,只有充电的指示却没有USB连接的提示,这个时候你就会无法进行真机调试,这个时候你可以试试远程调试。

方法一:远程ADB调试

其实设置远程ADB调试比较简单,只需要如下几个步骤就可以了.你的电脑需要和手机在同一个局域网内并且这个手机要通过wifii已正常连接.。。。

1.默认情况下ADB的连接方式为USB,所以需要更改ADB的连接方式.在你的手机上打开终端模拟器输入如下命令(命令行root权限下)

setprop service.adb.tcp.port 5555

上面的命令将adb的连接方式改为TCP方式并且在端口5555上进行监听.
重启手机上的ADB服务,继续在手机的终端模拟器输入如下两条命令
# stop adbd
# start adbd
上面两条命令将重启手机上的ADB服务.

然后在手机的终端模拟器上输入

netcfg

会出现如下结果:
lo UP 127.0.0.1 255.0.0.0 0x00000049
dummy0 DOWN 0.0.0.0 0.0.0.0 0x00000082
rmnet0 DOWN 0.0.0.0 0.0.0.0 0x00001002
rmnet1 DOWN 0.0.0.0 0.0.0.0 0x00001002
rmnet2 DOWN 0.0.0.0 0.0.0.0 0x00001002
usb0 DOWN 0.0.0.0 0.0.0.0 0x00001002
tunl0 DOWN 0.0.0.0 0.0.0.0 0x00000080
sit0 DOWN 0.0.0.0 0.0.0.0 0x00000080
ip6tnl0 DOWN 0.0.0.0 0.0.0.0 0x00000080
tiwlan0 UP 172.24.21.49 255.255.255.0 0x00001043

172.24.21.49 这就是我手机的IP地址,当然每个人手机的IP地址可能会不同.

手机上的操作已经完成,现在让我们打开电脑上的命令行cmd.exe(你的电脑必须已经安装了adb, android sdk, eclipse android 开发环境)

在命令行中输入如下命令:

C:\Documents and Settings\beifangying>adb connect 172.24.21.49:5555

上面命令中172.24.21.49 就是我们在手机上通过netcfg看到的地址,而端口5555就是一开始设置的端口.这时会出现如下结果

connected to 172.24.21.49:5555

表明你的电脑就连接成功了.你可以输入adb devices 查看已经连接的设备.eclipse的DDMS中也会显示相关的设备进程信息.就像你通过USB 连接一样.

C:\Documents and Settings\beifangying>adb devices
List of devices attached
172.24.21.49:5555 device

方法二:连接远程手机调试

这种情况适合不用的模拟器,在没有手机的情况下,以AS为例(eclipse也是可以的,一样操作),做真机调试。

首先,准备工作,我们需要借助如下这个辅助工具。。。

我们需要注册一个账号才能使用,现在这个平台是开放注册,免费体验,新用户免费赠送一次200机型以上的测试(App和手游测试都有)和260分钟的远程调试。。。需要的话就点这里吧 → http://t.cn/RbnFHwq

有了这个云手机工具以后,点进去选一台手机,比如像我之前做远程调试的时候用的是一台htc one M8

点击租用以后你会看到这个真实的手机画面...

你可以用鼠标点击或者滑动屏幕,这台手机也会跟着动。实际上你现在操作的手机是一台真的手机,只是他在云端,你是在用电脑操控它,而且它还支持截图,视频,日志,shell命令等功能。。。

接下来,你需要看到界面右上角的adb 连接地址。

每台云手机都有一个单独的连接地址,你需要复制这个adb连接地址到命令行,然后按回车执行这个命令你的电脑就会连接到云手机。(ps:云端和PC上显示的adb地址一定要一致)

这时在云手机的页面,你会看到请求远程连接的提示,点击“确定”。

输入命令“adb devices”,看到以下结果的话,此时你的电脑已经连接到云手机上了。

现在你可以用Android Studio调试了。。。

当你的电脑通过前面的操作连接到了云手机,你就获得了这台手机的最大控制权。此时,打开你的Android Studio就可以直接调试了,。,,

在代码中设置断点

打开 Android Studio,工具栏选择 Run —> Debug,选中已连接的云手机。。。

程序启动,可以看到程序命中断点,即可开始进行远程调试了。。。借下来,作为程序猿,你懂得,我就不多废话了。。。

这个工具的好处就在于所有的调试设备全部是真机,这样就避免了在调试的过程中模拟器速度慢、硬件性能模拟不出来以及接口不全的问题,而且这个工具提供视频、截图、日志、shell命令等功能,有了这个工具以后,项目组都不用再买手机了,省钱省事,提高开发效率,何乐不为~~~

以上就是两种远程调试的办法,如果觉得有用希望能支持下,点下推荐,谢谢。。。

你可能感兴趣的:(android,安卓bug,远程调试,app调试)