0
我有一个Android应用程序,它连接到一个套接字,并在onCreate
方法上发出connectionData
事件。我如何知道Android应用程序重新连接到Socket.io?
// connect to socket
private Socket socket;
{
try {
socket = IO.socket(AppConfig.URL_SOCKET_IO);
} catch (URISyntaxException e) {
Log.e(LOG_TAG, "error");
}
}
@Override
protected void onCreate(Bundle savedInstanceState) {
// emit connect and connection data socket
socket.connect();
socket.emit("connectionData", currPlayer.getPlayerID());
}
在服务器端,有activeSockets
HashMap中存储<connectionData, socket>
数据。当应用程序中的互联网连接丢失时,服务器捕获disconnect
事件并从HashMap中删除套接字。当应用程序重新连接到互联网时,它也会连接到套接字,但该应用程序不会再发出connectionData
,因为它只会在创建活动时发生。
如何检测应用程序是否重新连接到客户端的套接字,以便我可以再次发出connectionData
?