Шестнадцатеричные данные Flutter websocket закрывают поток?

#android #flutter #websocket #hex #decoding

Вопрос:

Мы работаем над приложением, которое должно отправлять сообщения другому контроллеру через websockets. Мы используем пакет web_socket_channel для создания нашего канала IOWebSocketChannel.

Все работает отлично, пока мы не получим данные, которые не могут быть преобразованы в обычный текст.

Недавно наши определения протоколов изменились. Мы использовали для восстановления сервера следующим образом: 1.0 b в нашем определении протокола это выглядит так(шестнадцатеричное): 00 Версия 0 Версия 1 Версия 2 Версия 3 00 00

Теперь он изменился на(шестнадцатеричный): 90 Версия 0 Версия 1 Версия 2 Версия 3 00 00

Когда мы получаем это в нашем приложении, приложение мгновенно закрывает соединение (код операции 8) без каких-либо ошибок, и сообщение никогда не появляется на экране.

Итак, я предполагаю, что поток не может обрабатывать эти символы?

Я что-то упускаю? Есть ли способ получить данные в виде шестнадцатеричного кода вместо текста?

Заранее спасибо! Markus