2010-11-19 51 views
2

我正在开发适用于Android的客户端/服务器软件。从手机到调试主机的TCP连接

当通过USB调试连接到手机时,我想访问我在开发PC上运行的网络服务器 - 使用USB连接。

这是可能的,如果是这样,如何?

回答

3

睡了一晚后,我偶然发现了答案。

在我的手机(N1,2.2.1)上启用USB共享为主机和主机提供IP地址。手机可以与我的开发机器上运行的网络服务器通信! (Chris,传言是对的)

只要确保你的web服务器正在监听那个IP地址。对于Apache,使用线

Listen 80 

Listen x.x.x.x:80 

(X.X.X.X是你的Android隧道的地址)

+0

但你可以调试,而你的圈养是活跃?这似乎不是我的情况(银河系运行2.3.3)。 – Tjaart 2012-09-05 08:35:10

+0

已经有一段时间了,所以我不记得@Tjaart。虽然我不记得任何问题,并且很可能是我正在使用调试器。我看不出为什么它不起作用。 – olafure 2012-09-18 13:37:01

+0

现在工作。我不记得究竟是什么错误。 – Tjaart 2012-09-19 07:44:27

1

最简单的方法是通过无线方式。如果你没有无线网络,我会说咬一口就拿到它,这将是必要的测试:)

0

通常USB只支持从开发机器到手机的连接(通过adb港口转发)而不是其他方式。当然,一旦创建连接,数据就可以双向移动。人们可以使用它来构建一个隧道代理Web代理(从开发机器到在电话上运行的守护进程的一个连接,从电话的出站连接,然后通过隧道隧道)

虽然说你想要什么要做的 - 通常称为反向网络共享 - 可能会在一些更新的设备中得到支持。

凯文的wifi建议可能是最简单的一个真正的设备。

另一方面,与典型的手机不同的是,android模拟器可以直接访问开发机器的回送接口,在文档中给出的别名地址。