0

我们正在创建一个移动应用程序,该应用程序将从了解同一网络上另一个实体的ID(假定两个手机位于同一WiFi网络中)中受益。我们应该使用什么广播/多播方法?

我们希望“主”应用程序发出“奴隶”应用程序可以拿起并存储的ID。无论何时“从站”登录到网络,它应该识别主站(获取主站的ID)并使用它,直到它从另一个网络和新主站获得一个新站点。

我们要求在iOS和Android下(最好在J2ME下)实现是可行的,并且该方法最有可能在普通网络配置(包括公共WiFi设置)中可用,只要客户端都具有正确的网络访问)。

我们应该使用什么广播/组播方法?

回答

0

公共WiFi连接的可用性几乎排除了IP层多播。

如果您只对同一子网内的应用程序感兴趣,则可能可以进行广播。我认为基站倾向于将所有连接的机器放在同一个子网上,而3G网络倾向于阻止加密狗之间的所有广播。

如果这样做失败了,那么另一种方法是拥有主人的层次结构,就像MSN一样。基本思想是,高层次的主人充当当地主人的目录。当然,你必须为诸如IP地址之类的事情做出改变,但作为一般规则,运行时间越长的应用程序越有可能建立一个其他人在附近的列表。 Masters还可能注意到它的一些从属设备具有相似的IP地址(危险:NAT),并让它们进行推测性联系。所有这些都需要相当通用的TCP/UDP功能,即使是J2SE也应具备这些功能。