我正在创建一个使用wifi直接传输数据的Android应用程序。我能够从客户端向服务器发送数据。我想通过服务器将数据从一个客户端发送到另一个客户端。 让我们假设有两个客户端A和C以及一个服务器B.我想通过B将数据从A发送到C.是否有任何可能的方法来完成此任务。我听到的一件事是来自另一个套接字输出流的输入流的转发数据。任何人都可以帮我解决这个问题。
` protected String doInBackground(Void... params) {
try {
ServerSocket serverSocket = new ServerSocket(8988);
Log.d(WiFiDirectActivity.TAG, "Server: Socket opened");
Socket client = serverSocket.accept();
Log.d(WiFiDirectActivity.TAG, "Server: connection done");
final File f = new File(Environment.getExternalStorageDirectory() + "/"
+ context.getPackageName() + "/wifip2pshared-" + System.currentTimeMillis()
+ ".jpg");
File dirs = new File(f.getParent());
if (!dirs.exists())
dirs.mkdirs();
f.createNewFile();
Log.d(WiFiDirectActivity.TAG, "server: copying files " + f.toString());
InputStream inputstream = client.getInputStream();
copyFile(inputstream, new FileOutputStream(f));
serverSocket.close();
return f.getAbsolutePath();
} catch (IOException e) {
Log.e(WiFiDirectActivity.TAG, e.getMessage());
return null;
}
}`