Иногда дубликаты сообщений получают и отправляют внезапно в сокет - PullRequest
0 голосов
/ 20 сентября 2019

У меня проблемы с простым клиентом java-сокета: соединение установлено правильно, и сервер, и клиент получают и отправляют данные.Но какое-то время сообщения получают и отправляют 2 или 4 разаЯ использовал следующую библиотеку https://github.com/socketio/socket.io-client-java

инициализация сокета в Application классе

public static Socket getSocket() {

    if (mSocket == null) {
        try {
            IO.Options opts = new IO.Options();
            String[] opt1 = new String[1];
            opt1[0] = "websocket";
            opts.transports = opt1;
            //opts.reconnection = true;

            //opts.reconnection = false;


                mSocket = IO.socket(BuildConfig.SOCKETURL);


        } catch (URISyntaxException e) {
            Log.i("SOCKET", "info>>" + e.getMessage());
            throw new RuntimeException(e);
        }
    }

    return mSocket;
}

Код получения события в Activity классе

socket?.on("newMessage", object : Emitter.Listener {
        override fun call(vararg args: Any?) {
           // logic after call back goes here
                }
            }
        }
    })

Проблемаis 'событие newMessage' иногда запускается несколько раз, в onDestroy() событие socket?.off("newMessage") незарегистрировано.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...