我想通过Socket连接收听读取短消息(4-10个字符长)。我的应用程序已成功连接到服务器,但似乎没有连接。我从未看到服务器发送的消息: - /
public class MainScreen extends AppCompatActivity {
private ServerSocket serverSocket;
private Socket socket;
Handler updateConversationHandler;
Thread serverThread = null;
private TextView text;
public static final int SERVERPORT = 1111;
Thread commThread;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main_screen);
/*
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
getSupportActionBar().setDisplayShowTitleEnabled(false);
*/
updateConversationHandler = new Handler();
this.commThread = new Thread(new CommunicationThread());
this.commThread.start();
FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab);
fab.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Snackbar.make(view, "Communication should be openend", Snackbar.LENGTH_LONG)
.setAction("Action", null).show();
}
});
}
class CommunicationThread implements Runnable {
private Socket clientSocket;
private BufferedReader input;
public void run() {
while (true) {
try {
socket = new Socket("10.0.1.1", 1111);
this.input = new BufferedReader(new InputStreamReader(socket.getInputStream(), "UTF-8"));
String read = input.readLine();
updateConversationHandler.post(new updateUIThread(read));
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
class updateUIThread implements Runnable {
private String msg;
public updateUIThread(String str) {
this.msg = str;
}
@Override
public void run() {
Log.v("Blub", msg);
// here should be some Work on the UI ...
}
}