【问题标题】:Android - Update UI to all clients in multiplayer game?Android - 为多人游戏中的所有客户端更新 UI?
【发布时间】:2011-10-04 15:19:27
【问题描述】:

我目前正在开发一个多人纸牌游戏,使用简单的 servlet 和 Android 设备来回发送 JSON。我目前对如何告诉所有其他客户某个玩家已经提交了一张卡片感到困惑,以便他们都可以更新他们的 UI。

我有哪些选择? 我目前正在考虑几种选择:

  1. 每隔 x 毫秒从数据库中获取 MOVE_TABLE。 (带有特定的房间 ID 和直播间会话)。
  2. 让 servlet 每次某个玩家做某事时向房间中受人尊敬的客户端发送某个“广播”,这样其他客户端就不必每 x 毫秒执行一次 GET 或 POST。 (虽然我不知道该怎么做,但这只是我的想法)。

有人可以帮我吗?或者也许建议我一个更好的解决方案?非常感谢您的帮助:)

【问题讨论】:

  • 选项 2 可能是“最好的”,虽然我不确定该怎么做。

标签: android json servlets multiplayer


【解决方案1】:

使用这种类型的解决方案对您有用吗? http://android-developers.blogspot.com/2010/05/android-cloud-to-device-messaging.html

如果您想了解更多信息,我在这个问题上找到了它: Does Android support near real time push notification?

如果这会导致大规模的体系结构更改以将移动作为通知发送,那么我可以建议只使用推送通知作为游戏执行新 MOVE_TABLE 查询的提示,或者您需要做的任何事情来获取新的移动。

【讨论】:

  • 来自链接:它使用 Google 服务的现有连接。这要求用户在 Android 上登录他们的 Google 帐户。我不能让我的用户登录他们的 Google 帐户只是为了玩……我使用我自己的 LOGIN_TABLE……或者我应该从 Accounts and Sync 菜单中提取它……我认为这个选项对我来说不是很有利……无论如何感谢您的帮助:)
  • 然而,从现在可用的一些推送技术来看,我认为我必须使用 C2DM T_T,因为我在 Windows 上运行它。Deacon 项目看起来很有希望,但它似乎会耗尽电池寿命跨度>
  • 是的,对不起。我不太熟悉让人们使用他们的 Google 帐户的简单方法。如果用户已经登录以让您的应用通过市场,我想这对用户来说不是一个巨大的负担?
  • 我找到了更好的解决方案。我必须使用套接字服务器,即 SmartFoxServer 才能更好地满足我的需求。 C2DM不适合频繁推送消息,C2DM也不保证消息推送的顺序。
猜你喜欢
  • 2013-01-31
  • 2015-12-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-05-17
  • 1970-01-01
  • 2018-03-20
相关资源
最近更新 更多