Перемычка от паразита от прослушивания - PullRequest
0 голосов
/ 03 июня 2018

Во Флаттере я хочу слушать событие отключения websocket, как этого добиться? Соединение с веб-сокетом будет прервано, когда приложение перейдет в фоновый режим , я до сих пор не нашел способ, позволяющий запустить его в фоновом режиме (есть ли у кого-нибудь решение?), Поэтому я должен определить, потеряно ли соединение с веб-сокетомили что-то, чтобы я мог повторно подключиться при потере соединения.Пожалуйста, помогите, если кто-нибудь знает, как этого добиться.

Ответы [ 2 ]

0 голосов
/ 03 апреля 2019

Вы можете узнать, закрыт ли websocket, используя onDone callback.См. Пример ниже:

      _channel = IOWebSocketChannel.connect(
        'ws://yourserver.com:port',
      );

      ///
      /// Start listening to new notifications / messages
      ///
      _channel.stream.listen(
        (dynamic message) {
          debugPrint('message $message');
        },
        onDone: () {
          debugPrint('ws channel closed');
        },
        onError: (error) {
          debugPrint('ws error $error');
        },
      );

Надеюсь, это поможет.

0 голосов
/ 06 июня 2018

Другие ответы, касающиеся SO и Интернета, предполагают, что вы не можете просто держать розетки открытыми в фоновом режиме (что кажется разумным, вы будете сохранять открытые сетевые подключения, которые могут повлиять на срок службы батареи).В зависимости от вашего варианта использования, вам может быть лучше посмотреть Push-уведомления или что-то, что проверяет расписание.

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