package com.example.agvcontroller.socket; import android.os.AsyncTask; import android.util.Log; import java.io.BufferedReader; import java.io.InputStreamReader; import java.io.PrintWriter; import java.net.Socket; public class SocketTask extends AsyncTask { @Override protected String doInBackground(Object... params) { String serverAddress = (String) params[0]; int port = (int) params[1]; String response = ""; //try { // Socket socket = new Socket(); // String serverIP = "192.168.4.188"; // int serverPort = 802; // InetSocketAddress address = new InetSocketAddress(serverIP, serverPort); // socket.connect(address); // OutputStream outputStream = socket.getOutputStream(); // String message = "whyc2"; // outputStream.write(message.getBytes()); // socket.close(); //} catch (IOException e) { // Log.e("SocketTask", "Error in socket communication", e); //} try (Socket socket = new Socket(serverAddress, port)) { // 向服务器发送消息 PrintWriter out = new PrintWriter(socket.getOutputStream(), true); out.println("whycq"); // 从服务器接收消息 BufferedReader in = new BufferedReader(new InputStreamReader(socket.getInputStream())); response = in.readLine(); } catch (Exception e) { Log.e("SocketTask", "Error in socket communication", e); response = "Error: " + e.getMessage(); } return response; } @Override protected void onPostExecute(String result) { // 处理从服务器接收到的消息 Log.d("SocketTask", "Server response: " + result); } }