在进行Server数据收发的时候,由于Android对HTTP、Socket等不支持在UI中进行操作,所以需要使用非主线程的其他线程来进行请求操作,于是想到了利用handler,将Socket等收发数据的请求放在其他线程中,通过handler传递来更新主线程,主要的收发传递代码如下:
一、handler接收端
private Handler handler = new Handler() {
@Override
public void handleMessage(Message msg) {
Bundle b = new Bundle();
b = msg.getData();
String s = b.getString("data");
System.out.println("******:" + s);
tv.append(s);
super.handleMessage(msg);
}
};
二、Socket发送端
Message message = new Message();
Bundle bundle = new Bundle();
bundle.putString("data", s);
message.setData(bundle);
handler.sendMessage(message);
这里使用了Bundle对数据进行了封装,便于数据的分类整合。