【发布时间】:2012-08-14 12:40:36
【问题描述】:
我想将一些数据(应用程序特定的数据)从 ios 设备传输到为各个平台运行相同应用程序的 android 设备(反之亦然)。 我知道实现这一点的最简单方法是拥有一个中继服务器,它将从一个设备获取数据并将其传递给另一个设备。 但是,如果这可以在 wifi 网络(点对点)上实现,而无需在两者之间使用任何类型的服务器(就像他们在多人游戏中所做的那样),我更愿意。
我试过gamekit,但它应该只能在ios设备上工作,不能支持android。也试过 alljoyn,但它还不能用于 ios。
任何尝试过这个或对如何进行有一些想法的人都非常欢迎他们的想法......
【问题讨论】:
-
想到的只是打开一个套接字连接并来回发送JSON数据。但是,一台设备必须始终知道另一台设备的 IP 地址。它适用于什么样的应用程序,正在交换什么样的数据?
-
这也是我脑海中浮现的东西.. 但我不确定如何广播运行我的应用程序的设备(ios 或 android)ip。您是否知道图书馆或这样做的东西?基本上我在这里想要实现的是gamekit在ios中所做的,但我希望它也支持android。我将要传输的数据是应用特定的元数据(可能是一些数字和字典),应该可以通过 JSON 序列化轻松传输。
-
我想不出办法。我仍然建议您编写一些在本地网络中运行的非常简单的 java 服务器(具有已知 IP),只需让 2 个客户端通过该服务器交换它们的 IP,然后它们就可以直接相互连接。
-
我不认为这是一个选项,因为我无法让我的服务器为这个世界上的所有本地/ad hoc wifi 网络运行。我想要的是 2 台设备连接到同一个网络,只是通过广播他们的存在以某种方式看到其他设备,连接到另一个设备并开始说话......理论上看起来很简单,但我找不到办法!
-
我明白了......那么您的应用程序的用例是什么?两个玩家在一个网络中玩的游戏?如果是这样,您可以要求您的用户彼此靠近并建立一个短的蓝牙连接?编辑:为什么你不能让你的服务器为所有网络运行?只需在 Internet 上的某个服务器上安装并让客户端交换其本地 IP。当他们连接到网络时,他们仍然可以访问互联网。