[英]Unable to read data sent from socket server in java
我想在android設備和java服務器之間進行通信。 服務器端:
ServerSocket serverSocket = new ServerSocket(port);
Socket socket = serverSocket.accept();
OutputStream out = socket.getOutputStream();
PrintStream pw = new PrintStream(out);
pw.print("hello");
pw.flush();
socket.close();
Android客戶端:
public class connectTask extends Thread {
@Override
public void run() {
super.run();
while (true) {
try {
Socket socket = new Socket("192.168.0.101", 4444);
InputStream inputStream = socket.getInputStream();
BufferedReader reader = new BufferedReader(new InputStreamReader(inputStream));
String line = reader.readLine();
runOnUiThread(new Runnable() {
@Override
public void run() {
textView.setText(line);
}
});
socket.close();
} catch (IOException e) {
}}}}
並以這種方式啟動線程:
thread = new Thread(new connectTask());
thread.start();
問題是我無法從Java服務器獲得任何東西。 我發送或接收數據有誤,我無法弄清楚問題出在哪里,我在做什么錯?
您的代碼看起來不錯(可能是String line = ...
應該是final String line = ...
),並且需要檢查Server的IP地址和端口。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.