2011-07-18 62 views
1

我正在使用基本上是基于位置的游戏的一个游戏。比赛的持续时间是5分钟。一切工作正常。但是问题在于一台设备上的游戏是在另一台设备上启动游戏之前开始的。Android会话同时开始

假设用户A已发送请求,用户b已接受请求。那么只有游戏屏幕应该出现。但在我的情况下,它没有发生。

任何人都可以帮助我在两个设备之间同时启动游戏的逻辑,而无需第二次延迟。我正在使用Web服务发送游戏请求。

感谢

回答

1

只是一个想法:

你可能会使用某种Mutex上,试图以确定两个客户已经准备好服务器端。

这是假设游戏运行在服务器上的描述,而不是点对点。

希望这会有所帮助!

+0

这可能会有所帮助。尝试使用服务器发送给客户端的某种命令,然后只有游戏在两台设备上启动。 – Sumit

0

也许用户B在他接受时启动,但用户A实际上尚未收到响应......或该场景中的某些内容。

当用户B接受时,请花费时间(确保同一时间的服务器时间)并在X(10或15)秒后开始?然后将该时间(时间,而不是持续时间)发送给用户A。在这种情况下,用户A和用户B都只是在等待指定的时间,然后同时开始?只是一个想法,实施完全取决于你:)