java - 如何为多人 Android 应用程序设置 Java 服务器和数据库

标签 java android networking frameworks

我想制作一款多人 Android 游戏,并且在网络方面绝对是个新手。我对 C 和 Java 中的套接字编程有一些了解,但是据我了解,从 Android 设备到远程服务器进行通信时并不是那么简单。 基本上,我只是不确定如何着手设置该项目的服务器端组件。有人告诉我研究框架,但我不太确定它们将如何在我的特殊情况。

这是我的应用程序如何工作以及我希望它如何与服务器通信的细目分类。每当用户想要登录、创建游戏、移动、检查统计等时,客户端应用程序将向服务器发送请求。服务器将更新或从数据库中检索信息(以某种方式)并将其发送到客户端。如果玩家要下棋,服务器负责进行所有计算,存储游戏状态,并将更新的游戏推送给双方玩家。

我希望有人能阐明我将如何开始这项工作。任何信息将不胜感激。谢谢

最佳答案

本质上,您想要设置一个套接字服务器程序,在您的服务器上监听来自客户端的连接。您可以通过多种方式实现这一点,但您似乎想要利用运行服务器端的数据库(例如 MySQL)来处理登录用户的身份验证等。既然您说您很熟悉已经使用 Java,而 Android 是基于 Java 的,我建议您使用 Java 作为服务器应用程序。开始时需要考虑的几件事是:

Java 套接字编程: http://docs.oracle.com/javase/tutorial/networking/sockets/index.html

此处使用 Java 的聊天客户端/服务器示例: http://pirate.shu.edu/~wachsmut/Teaching/CSAS2214/Virtual/Lectures/chat-client-server.html

另请查看 Oracle 网站上的 Java JDBC 教程(用于将 Java 与 MySQL 服务器连接),您可能会发现 Android AsyncTask 类在您实现 Android 客户端时会派上用场。最好从纯 Java 客户端开始,让服务器方面先工作,然后再转向基于 Android 的客户端。一旦你建立了一些代码,你就可以在这里发表更精致的帖子并收集更具体的答案。希望有所帮助,祝你好运。

关于java - 如何为多人 Android 应用程序设置 Java 服务器和数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13042089/

相关文章:

java - Oracle NoSQL 数据库 — 使用它进行开发

android - 如何将图像添加到资源选择器?

java - 将字符串转换为日期并计算日期差

java - 为什么我只在某些 Windows 7 系统上需要 java.net.preferIPv4Stack=true?

linux - 有没有办法克服 linux 系统上的端口限制?

networking - 如何从外部主机 (mac) 连接到 docker

java - 使用 java 获取 NAT 网关或代理后面的 SSL 客户端的主机名

java - Mongo Java 查询和/或组合

android - Python、Kivy、Buildozer : error using python-firebase/requests

java - 如何使用 Eclipse 和 Tomcat 自动化部署 servlet 的过程?