Socket IO Android-如何从服务器接收消息并将其放入文本视图
我正在接收发送和接收消息,但我不知道如何将其放在文本视图中。我不知道在什么时候做这件事:conversaChat.appendargs[0].toString 我的代码是: 公共类MainActivity扩展了活动{Socket IO Android-如何从服务器接收消息并将其放入文本视图,android,eclipse,sockets,io,socket.io,Android,Eclipse,Sockets,Io,Socket.io,我正在接收发送和接收消息,但我不知道如何将其放在文本视图中。我不知道在什么时候做这件事:conversaChat.appendargs[0].toString 我的代码是: 公共类MainActivity扩展了活动{ Button btnEnviar; EditText inputMensagem; TextView conversaChat; String mensagem; private BasicExample BasicExample; private ChatCallbackAda
Button btnEnviar;
EditText inputMensagem;
TextView conversaChat;
String mensagem;
private BasicExample BasicExample;
private ChatCallbackAdapter callback;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
btnEnviar = (Button) findViewById(R.id.button1);
inputMensagem = (EditText) findViewById(R.id.editText1);
conversaChat = (TextView) findViewById(R.id.textView1);
btnEnviar.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
mensagem = inputMensagem.getText().toString();
conversaChat.append("usuario diz:" + mensagem+"\r\n");
inputMensagem.setText("");
try {
new BasicExample();
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
public class BasicExample implements IOCallback {
private SocketIO socket;
/**
* @param args
*/
public void main(String[] args) {
try {
new BasicExample();
} catch (Exception e) {
e.printStackTrace();
}
}
public BasicExample() throws Exception {
socket = new SocketIO();
socket.connect("xxxxx", this);
// Emits an event to the server.
socket.emit("adduser", "Diego");
socket.emit("sendchat", mensagem);
//socket.onMessage("updatechat","teste", mensagem);
}
@Override
public void onMessage(JSONObject json, IOAcknowledge ack) {
}
@Override
public void onMessage(String data, IOAcknowledge ack) {
}
@Override
public void onError(SocketIOException socketIOException) {
System.out.println("an Error occured");
socketIOException.printStackTrace();
//conversaChat.append("desconectado");
}
@Override
public void onDisconnect() {
System.out.println("Connection terminated.");
//conversaChat.append("desconectado");
}
@Override
public void onConnect() {
System.out.println("Connection established");
//conversaChat.append("conectado");
}
@Override
public void on(String event, IOAcknowledge ack, Object... args) {
Object[] arguments = args;
String json = arguments[0].toString();
if(event.equals("updatechat")&& args.length > 0){
conversaChat.append(arguments[0].toString()+": "+arguments[1].toString());
}
}
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
}
您知道,有几种已开发且广泛使用的协议和相关库,通常用于在用户之间传输消息,对吗?是的,这一部分很好,在我的android日志中,我收到了消息,但当我尝试将其放入TextView时,只收到一条消息,并断开了我的聊天