2012-08-06 105 views
0

我在寻求更多有关下一步该去哪里的建议,而不是如何去做。Android手机之间的位置交换

我正在开发一个增强现实Android游戏作为一个学生项目,并且我偶然发现了一个问题。四部手机必须知道彼此的位置,并在时间步骤上显示在地图上(为了游戏的缘故,它不应该是实时的)。除此之外,当其中一个电话/玩家到达某个位置或者做某事时,应该通知玩家。

我想用PHP服务做到这一点,每个电话会在几秒钟内检查剩下的位置(全部由JSON),发送它的位置,就是这样。非常简单,但恐怕随着游戏的进展,会出现很多失步和无意义的数据。由于手机并不是每个人登录时都在同一秒开始的,而且我不确定如何以这种方式来完成这些事件(例如,其中一个玩家可以披风,并且他的位置不应该在接下来的x秒),或者到达一个地点,或者地图上还有哪些物品(玩家可以“拾起”物品)。有人会比其他人知道得更早。

这确实需要一个类似于推式的解决方案,但我对C2DM并不十分熟悉,在我看来,使用它是开发中的一个实际开销,并且我需要一个C#/ Java或类似的服务器PHP certanly无法推送到云(或可以吗?)。我知道C#和Java,但它需要更多时间,因为我需要解决线程等问题。 C2DM甚至可以用于此?

基本上,我正在寻求更有经验的开发人员的想法,这里最好的解决方案是什么?有没有办法来解决PHP的问题并定期检查服务器,还是应该继续使用云服务和更复杂的服务器?

对不起,很长的解释:)。

回答

1

对不起,这不是简单的,但我在我自己的应用程序中遇到几乎完全一样的问题,有没有办法避免这种情况,需要;

  1. 与REST API的服务器来管理和分发数据
  2. 的方式来建立朋友/组
  3. 的方式将数据推

谷歌云端通讯真的不是很麻烦。

查看Google IO 2012的代码,他们已经在那里使用了很多代码。

http://code.google.com/p/iosched/source/browse/

你真正需要建立一个REST API与相当多的功能能够识别设备,并设置了这些团体的朋友。我建议使用Facebook集成建立一个朋友网络。

https://developers.facebook.com/

而且有无数种方式来设置REST API,但我见过最快于今年在谷歌IO释放,这就是谷歌的AppEngine端点。

http://devthots.blogspot.com/2012/07/building-awesome-android-apps-with.html

+0

不需要设置朋友/组。启动四部手机并显示它是可能的就足够了。该项目只是一个展示。如果结果很有趣,我可以在业余时间考虑这一点。 Tnx的链接,我会在早上读它,因为它在我的时区很晚:)。 – 2012-08-07 00:17:43

+0

这将是很好,如果你可以批准的答案:)如果是这样简单,我认为只要做其余的API将罚款。只需创建一个1命令rest api。因此,获取变量每个设备发布lat,long和name,作为回报,它获得所有其他设备的数组。 – 2012-08-07 02:54:49

+0

当然我会批准它:)。网络技术并不是我的专长,所以术语1命令rest api并不意味着很多。 事件的问题仍然有点模糊,但我想今天我会开始研究一个概念。 TNX。 – 2012-08-07 12:29:06

0

Comet一个尝试,它是所有关于HTTP请求