WiFi-Direct 在游戏开发中的使用 (Android)
Posted
技术标签:
【中文标题】WiFi-Direct 在游戏开发中的使用 (Android)【英文标题】:Usage of WiFi-Direct in Game Development (Android) 【发布时间】:2014-06-09 07:52:23 【问题描述】:我正在用安卓开发棋盘游戏。我想让这个游戏可以在两个不同的设备上玩,因为我需要使用 WiFi-Direct。我想知道是否有任何图书馆可以帮助我
查找并连接设备 在触摸监听事件后在两个设备之间发送和接收板坐标我对内置库感兴趣。 要么 如果可能,请分享客户端/服务器架构的实施示例。
【问题讨论】:
【参考方案1】:这是给服务器的:
Thread serverThread = new Thread(new Runnable()
@Override
public void run()
try
serverSocketTCP = new ServerSocket();
serverSocketTCP.setReuseAddress(true);
serverSocketTCP.bind(new InetSocketAddress(YourPort));
while (status)
clientSocketTCP = serverSocketTCP.accept();
BufferedReader bufferedReader = new BufferedReader(new
InputStreamReader(client.getInputStream()));
OutputStream outputStream = client.getOutputStream();
catch (Exception e)
e.printStackTrace();
);
serverThread.start();
这是给客户的:
Socket clientSocket = new Socket(ServerIP,ServerPort);
outputStream = clientSocket.getOutputStream();
bufferedReader=newBufferedReader(new
InputStreamReader(clientSocket.getInputStream()));
【讨论】:
【参考方案2】:使启动游戏的设备作为 TCP 服务器运行,并使其在网络上广播并侦听预定端口。当其他玩家想要加入时,他只需从菜单中选择服务器并加入游戏。坐标可以作为触摸事件的数据包发送。
【讨论】:
我想让它点对点。 你需要一个服务器来广播。 对于初学者来说,哪一个比较容易?点对点或客户端服务器架构。 客户端/服务器相当简单,你可以在网上找到很多例子。 如果您需要帮助,我可以举个例子。以上是关于WiFi-Direct 在游戏开发中的使用 (Android)的主要内容,如果未能解决你的问题,请参考以下文章
WIFI-Direct(Wifi直连)AirPlayDLANMiracast功能介绍
在 Android 和 Raspberry Pi 3 Linux 之间建立 Wifi-Direct 连接
我可以通过 WIFI-Direct 在 Android 和 IOS 之间连接吗?