我正在编写一个需要能够访问笔记本电脑上的网络服务器的应用。我正在开发的手机充当我的笔记本电脑所连接的WiFi热点。如果我尝试在手机浏览器中访问192.168.43.16,一切正常。
但我正在开发的应用程序由于某种原因无法访问网络服务器。我猜它正在尝试使用3G连接,这当然不会起作用。如果我关闭移动数据,我的应用程序中会收到一条错误消息,说它无法连接到172.30.253.241:8799,这似乎是我的ISP的MMS服务器(?)。这对我来说没有意义,但也许这里有一些缓存?再次,通过手机中的Chrome访问我的本地网络服务器非常合适。
该应用程序正在使用"Android Asynchronous Http Client" by loopj,它建立在Apache的HttpClient之上。我能做些什么来完成这项工作?
我希望能够访问本地Web服务器的原因是因为它使得开发和调试与我的应用程序一起使用的服务器api比在网络上的生产服务器上FTP更加容易和快速。
答案 0 :(得分:1)
问题解决了!
我要做的是在发出请求之前使用AsyncHttpClient
设置setProxy()
的代理。我将代理地址设置为运行Web服务器的笔记本电脑的本地IP地址。
client.setProxy("192.168.43.16", 80);
现在它似乎按预期工作了。