Kryonet - двойные входящие пакеты

Хорошо. Я получаю пакет один раз, но его блок срабатывает дважды. Например:

У меня есть такой блок:

           if (object instanceof InitTheGame) {
                System.out.println("STARTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT");
                awaitOpponent.dismiss();
                isInQueue = false;
                matchRunning = true; // handles the while loop inside the thread that sends data to the server
                isInMatch = true; // handles view (checks for this if we exit the app)
                // new GamePacketSender().start();
                casualGameHolder.gameLoop.start();
                new Sensor(act, casualGameHolder.gameLoop);
                touchListener = new TouchListener(casualGameHolder.gameLoop);
                this_layout.setOnTouchListener(touchListener);

                act.runOnUiThread(new Runnable() {
                    public void run() {
                        GameStartCountdown countdown = new GameStartCountdown(4000,1000);
                        countdown.start();
                        countdownDialog = new Dialog(act);
                        countdownDialog.show();
                        countdownDialog.setCancelable(false);
                    }
                });
            }

В консоли (LOG_TRACE) я вижу, что пакет был получен ОДИН РАЗ, но System.out «STARTTTTTTTTTTTTTTTTT» отображается дважды, дважды отображается обратный отсчет и т. д.

Я не хочу публиковать весь код, потому что он огромный и сложный для понимания. Может ли это быть вызвано переполнением буфера на сервере, а может тем, что у меня КАК-ТО два соединения открыты одновременно на одном устройстве? Если есть опытный человек с Kryonet, буду признателен за помощь.


person Community    schedule 01.11.2015    source источник
comment
Можете ли вы показать код, где вы отправляете данные с сервера сюда.   -  person Sneh    schedule 07.11.2015
comment
Проблема заключалась в том, что открылись два слушателя. Я не удалял слушателя после завершения игры - он создавал новый :)   -  person    schedule 07.11.2015


Ответы (1)


Вызвано регистрацией нескольких слушателей (должно быть нулевым после завершения игры).

person Community    schedule 06.11.2015