下面是一个使用Android套接字实时阅读的代码示例:
SocketReadTask
的异步任务类,用于在后台线程中读取套接字数据:import android.os.AsyncTask;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.Socket;
public class SocketReadTask extends AsyncTask {
private static final String SERVER_IP = "your_server_ip";
private static final int SERVER_PORT = your_server_port;
private Socket socket;
private BufferedReader reader;
@Override
protected Void doInBackground(Void... params) {
try {
socket = new Socket(SERVER_IP, SERVER_PORT);
reader = new BufferedReader(new InputStreamReader(socket.getInputStream()));
String line;
while ((line = reader.readLine()) != null) {
publishProgress(line);
}
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
if (reader != null)
reader.close();
if (socket != null)
socket.close();
} catch (IOException e) {
e.printStackTrace();
}
}
return null;
}
@Override
protected void onProgressUpdate(String... values) {
// 在UI线程中更新UI,例如在TextView中显示读取到的数据
String data = values[0];
// TODO: 在UI上显示读取到的数据
}
}
new SocketReadTask().execute();
这样就可以在Android应用中实现实时读取套接字数据。请注意替换代码中的your_server_ip
和your_server_port
为实际的服务器IP地址和端口号。