【发布时间】:2015-01-22 01:05:13
【问题描述】:
我正在构建一个连接到我笔记本电脑上的后端服务的 Android 应用程序。它连接到从 JSON 获取数据的本地主机地址。
当我在代码中写入笔记本电脑的 IP 地址时,它可以正常工作。 此 IP 地址可以更改,因此我想使用似乎不起作用的主机名。
私有静态最终字符串 URLLocalhost =
"http://localhost:8081/"; // 不起作用
private static final String URLPCName ="http://PCNAME:8081/"; // 不起作用
private static final 字符串 URLIPAddress ="http://192.168.x.y:8081/"; // 工作,但 IP 需要修改@Override public List<Spike> getSpikes() { RestAdapter restAdapter = new RestAdapter.Builder().setEndpoint(URLPCName).build();
当它不起作用时,我收到多个 ECONNREFUSED 错误。
它不会很快公开,所以我没有那个网址。
我为此找到了some solutions,但他们需要对我的设备进行更改。 (没试过)
- 更改 DNS 设置
- 编辑主机文件
我希望任何设备(可能仅限于本地 wifi)访问此服务,而无需更改设备中的设置。
如何使用代码中的主机名进行连接?
相关问题,没有解决我的问题:How to connect my android app to the remote web server
【问题讨论】:
-
您的 PCNAME 在您连接的网络中是否可以访问?
-
是的,我可以从同一网络上的其他笔记本电脑访问它。
-
和设备连接到同一个网络
-
是的,确实如此。 (如果不是,IP 地址会起作用吗?)