【发布时间】:2014-05-04 00:44:41
【问题描述】:
我有一个服务器(在我的笔记本电脑上运行的 java 应用程序)和一个客户端(在我的 android 智能手机上运行的 java 应用程序)。 我正在尝试从我的客户端自动查找服务器的 IP 地址。
现在我只是循环同一 LAN (192.168.1.0 > 192.168.1.1.255) 中的所有 IP,如果服务器(正在侦听自定义端口)接受连接,那么我找到了 IP。
问题是,如果我将连接超时设置为小于 200 毫秒,大多数情况下客户端都找不到服务器。
所以问题是,我如何实现更好(更快)的方式来查找服务器 IP? 我尝试过 java InetAddress.isReachable() 方法,但服务器似乎总是无法访问...
而且,如果没有更好的方法,您认为本地 (LAN) 套接字连接的超时值是多少?
【问题讨论】:
-
您可能想查看网络服务发现 - developer.android.com/training/connect-devices-wirelessly/… 或类似的东西。
标签: java android sockets timeout