我想在我正在開發的應用程序中實現IM。我被建議使用socket.io來實現這個目標。不過,我只是Android開發的初學者。基本上,我只是希望用戶能夠發送簡單的字符串消息給對方。如何在android中使用socket.io實現即時消息?
所以,我通過this github repo在即時消息應用程序中使用socket.io。但是我沒有從中理解任何東西。我只想了解每種方法的作用以及何時應該調用?如何發送消息以及如何收到消息?有人可以提供這個代碼的簡單解釋嗎?
我想在我正在開發的應用程序中實現IM。我被建議使用socket.io來實現這個目標。不過,我只是Android開發的初學者。基本上,我只是希望用戶能夠發送簡單的字符串消息給對方。如何在android中使用socket.io實現即時消息?
所以,我通過this github repo在即時消息應用程序中使用socket.io。但是我沒有從中理解任何東西。我只想了解每種方法的作用以及何時應該調用?如何發送消息以及如何收到消息?有人可以提供這個代碼的簡單解釋嗎?
Socket.IO使用套接字在兩個節點之間啓用實時雙向事件通信。
在高層次上,要在應用程序中使用Socket.IO,首先需要創建它的一個實例。這將允許您發送和接收消息。例如:
private Socket mSocket;
mSocket = IO.socket("http://chat.socket.io");
mSocket.connect();
要發送消息,您需要將emit
添加到事件中。我們稱之爲"new message"
。以下代碼使用emit
發送消息。
mSocket.emit("new message", message);
在聊天應用程序,你會emit
當用戶點擊發送按鈕一個新的消息。
現在我們知道如何發送消息,我們需要知道如何接收消息。要接收消息,您需要聽一個事件,而不是發送一個事件。
mSocket.on("new message", onNewMessage);
上面一行將監聽一個"new message"
事件,並執行該行爲在onNewMessage
設置,這是一個Listener
。在您的聊天應用程序中,您可以通過添加Listener
中的邏輯來更新新消息的UI。
總結一下,您需要:
實施細節可在Socket.IO's Android tutorial中找到。
希望這會有所幫助!
RecylerView with ViewType(發送,接收)和一個EditText發送新消息。在官方網站http://socket.io/blog/native-socket-io-and-android/上有一個教程。簡單而簡單。 –