Android中的2个客户端+ 1服务器游戏,PHP中的Web服务器

时间:2013-04-15 04:18:45

标签: java php android client-server

我正在尝试构建一个包含2个客户端和1个服务器的Android应用。设计如下:

  1. 客户端1登录。
  2. 客户端2登录。

  3. 客户端1输入一些需要由服务器通过MySQL db验证的文本。

  4. 根据服务器响应,服务器将一些结果发送给客户端2。
  5. 这种情况来回发生直到比赛结束。

    两个客户端都是Android移动设备。我能够建立一个客户端(Java)+服务器(PHP)+ MySQL连接,它工作正常。但现在我对如何在我的应用程序中与同一服务器交互实现2个客户端的概念感到困惑。

1 个答案:

答案 0 :(得分:0)

缺少一些重要的用例:

  • 如果连接了两个以上的客户端会发生什么?
  • 客户1如何了解客户2以及他如何与他一起开始游戏?
  • 如果其中一个客户端断开连接会发生什么?

通常这些用例的答案显示您的服务器具有状态,至少您需要处理登录客户端的状态和活动游戏的状态。

您可以使用PHP和MySQL实现它,但您可能会发现自己花费大部分时间来处理与体系结构相关的问题而不是添加新功能。 我建议选择更好的框架,至少是Servlets。

但是,如果您仍希望在PHP中执行此操作而不回答上述用例:

  • 登录后,启动一个拉动机制:客户每隔x秒询问服务器是否有关于他的信息,并根据响应执行适当的操作。
  • 每当您要告诉客户端时,将响应表添加到服务器,将客户端ID和响应添加到此表。
  • 您可能需要一个用于登录用户的表和一个用于游戏状态的表。

客户端1已登录并开始拉

  • 客户1响应:什么都不做

客户端2已登录并开始拉

  • 客户1响应:发送文本
  • 客户2响应:什么都不做

客户端1发送文本

  • 客户1响应:什么都不做
  • 客户2回应:结果

客户端2发送文本

  • 客户1响应:结果
  • 客户2响应:什么都不做

还有其他方法,但在我看来,PHP在这里不是正确的解决方案。

希望这有帮助,Yaron