【发布时间】:2015-08-25 04:59:56
【问题描述】:
我正在 iOS 和 android 上构建一个纸牌游戏应用,其逻辑如下:
- 人们从 App Store / Google Play 下载应用程序
- 他们可以与同一个 wifi 网络中的其他玩家离线玩游戏
- 一个客户端将充当服务器,而其他玩家将充当客户端
- 游戏是一款嵌入了 Node.js、SQLite 的应用
- 每个玩家的动作都会保存在服务器中
- 当有互联网访问时,iOS 作为服务器将数据发送到云端
我的做法是
游戏将是带有 Node.js 的 HTML5,玩家充当游戏持有者(服务器)将打开一个端口(如端口 80)
其他玩家将使用 HTTP get/set 向游戏持有者发送和接收 JSON 包
我的问题是
我是否可以在 iOS 上运行 Node.js 作为服务器并打开端口让其他玩家连接?这样我就可以使用 JSON 进行玩家之间的所有通信。
如果没有,不同设备(iOS、android、Windows Phone)的最佳通信方式是什么?
我们将不胜感激任何建议和帮助。谢谢。 迈克尔
【问题讨论】:
-
我不认为你可以在没有越狱的情况下在 iOS 上运行 node.js。使用 parse.com 作为后端将是一个不错的选择。 parse 正在运行类似 nodejs 的东西
-
如果仅适用于 iOS。有本地 API 来连接本地网络中的设备。您可以在 Apple Developer Center 中找到示例
-
另一个选项是 websocket。您可以在客户端之间使用 websocket 进行通信。这将是一个嵌入到 webview 中的 HTML5 应用程序
-
@EricSo 谢谢你提供的信息,websocket 能否在 iOS 和 Android 上打开端口,以便我可以在 HTML5 应用程序中打开端口 80 并让其他设备使用 HTTP 调用发送/接收数据?
标签: javascript android ios node.js html