带有 Android 客户端的 Java 游戏服务器

标签 java client-server communication

我即将开始一个游戏项目。这将是一款具有客户端-服务器架构的网络游戏,带有 Java 服务器以及 Web 和 Android 客户端。影响是低带宽(用于移动设备)和快速响应。客户端-服务器通信有哪些技术/库?我在 web 应用程序(GWT/Vaadin 和 servlets)方面有一定的经验,但不知道在实现游戏服务器时使用什么,主要是为了通信。

我知道我可以使用带有对象序列化的 Java 套接字或 JSON 将数据从客户端传递到服务器,但我不知道这些方法在带宽方面的效率如何?或者还有比这些更合适的吗?只需为我指明正确的方向就足够了。

提前致谢!

最佳答案

就 Android 客户端库而言,有两个主要选项。第一个是 java.net.* 包,您将主要在其中使用 HttpUrlConnection .

更好的选择是使用 Apache HTTP package这也是 Android SDK 中的标准配置。它使您在处理网络连接时有更多的控制权/灵 active /冗长性。

这是一个体面的example如何使用 Apache 客户端库。我建议使用这些,因为 java.net 包实际上只适用于最基本的 GET 请求。

我建议使用 JSON 方法,因为这样您就不必编写 Java servlet 后端来反序列化 Java 对象。然后后端可以独立于客户端进行更改。

关于带有 Android 客户端的 Java 游戏服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7312082/

相关文章:

java - 在 JavaFx 中将参数传递给 Controller ​​类时遇到问题

c - 警告 : cast to pointer from integer of different size [-Wint-to-pointer-cast]

iframe - Page和IFRAME之间的跨平台浏览器通信(同域)

java - 如何确保 java-maven 构建的所有源文件都附有版权声明?

java - Eclipse 错误 : "Failed to connect to remote VM"

java - 如何使用 netty 客户端获取服务器响应

我可以通过两者之间的服务器实现客户端 - 客户端通信吗?

communication - 如何在连接到 WiFi 接入点的设备之间进行通信?

c - 如何通过HTTP使用RTSP?

java - 我应该使用 Java 8 默认方法来手动实现 Spring Data 存储库方法吗?