Принудительное отключение сетевого принтера вызывает тайм-аут при повторном подключении - PullRequest
0 голосов
/ 25 июня 2019

Я работал с Epson TM-m30 через Wi-Fi, и почти все работает как положено, но я заметил, что если я вручную отключу Wi-Fi на моем устройстве Android, включу Wi-Fi снова и попытаюсь снова подключиться, Я получаю Epos2Exception.ERR_TIMEOUT.

После дополнительного тестирования я заметил, что, если я подожду ~ 2-3 минуты между выключением Wi-Fi и попыткой повторного подключения, я могу подключиться без проблем.

Примечание. Когда мое приложение обнаруживает, что Wi-Fi отключен, оно отключает все сетевые принтеры через epson api.то есть.что происходит сейчас:

  1. Android-устройство успешно подключается к TM-m30 через Wi-Fi
  2. Я отключаю Wi-Fi на своем устройстве Android, принтер принудительно отключается перед запуском epson mPrinter.disconnect команда
  3. Приложение Android замечает, что Wi-Fi отключен и запускает mPrinter.disconnect, mPrinter.stopMonitor и т. д. для очистки
  4. Я снова включаю Wi-Fi, нахожу принтер через Discovery
  5. Я пытаюсь подключиться к принтеру и получаю ERR_TIMEOUT
  6. Если я несколько раз пытаюсь подключиться или подождать ~ 2-3 минуты перед подключением, то я подключаюсь без ошибок.

Я также прошел пример приложения ePOS2_Printer от epson.Я заметил, что они подключаются к принтеру только при отправке задания на печать и сразу же отключаются после завершения печати, но одна из функций моего приложения - отслеживать состояние принтера через statusChangeListener, что, по моему пониманию, требует от принтерабыть подключен через API.

Я что-то неправильно понимаю?или есть лучший способ справиться с внезапным отключением Wi-Fi?

...