Size: a a a

Android Developers

2021 January 14

MK

Max Kot in Android Developers
Со строками так первые 2 байта длинна строки, после обрезаем по этой длинне и декод строки
источник

SG

Sergey Grieg in Android Developers
Max Kot
Ну в моем случае я делаю так, есть допустим 333 Id пакета, клиент и сервер знает за что он отвечает и имеет инструкции, например свой заголовок в нем первые 2 байта это Id, следующие 2 байта размер пакета, далее допустим идёт само тело, мы уже знаем длинну и обрезаем массив по длинне и откидываем шапку, далее например пакет отвечал за инвентарь и передал список предметов в порядке 2 байта Id предмета и т.д до конца длинны массива
Лучше немного иначе
источник

MK

Max Kot in Android Developers
И по факту получили массив с id предметов
источник

SG

Sergey Grieg in Android Developers
Package-Id: ID
Package-Length: Length

Package
;
источник

SG

Sergey Grieg in Android Developers
Sergey Grieg
Package-Id: ID
Package-Length: Length

Package
;
Сопсна, как вкратце выглядит обращение к тому же WEB-серверу, который работает на базе того же TCP/IP
источник

SG

Sergey Grieg in Android Developers
Sergey Grieg
Сопсна, как вкратце выглядит обращение к тому же WEB-серверу, который работает на базе того же TCP/IP
Точнее его ответ
источник

MK

Max Kot in Android Developers
Получается первые 4 байта шапка, далее до конца массива идем по 2 байта
источник

SG

Sergey Grieg in Android Developers
Max Kot
Получается первые 4 байта шапка, далее до конца массива идем по 2 байта
Нет
источник

SG

Sergey Grieg in Android Developers
Ты не можешь знать наверняка длину ид
источник

MK

Max Kot in Android Developers
Почему?
источник

SG

Sergey Grieg in Android Developers
Мб там будет id 1928592919482
источник

SG

Sergey Grieg in Android Developers
Хер знает как будет меняться работа с этим во времени
источник

MK

Max Kot in Android Developers
Длинну сегмента я могу знать
источник

SG

Sergey Grieg in Android Developers
Max Kot
Длинну сегмента я могу знать
На клиенте?
источник

SG

Sergey Grieg in Android Developers
Ведь нужно знать сколько байт тебе нужно прочитать из входящего потока
источник

MK

Max Kot in Android Developers
Смотри, например шапка 4 байта, и я передал 11 предметов и теперь в шапку я пишу 22 + 4
источник

MK

Max Kot in Android Developers
И все, далее на клиенте читаю первые 2 это ид, далее 2 это длинна
источник

SG

Sergey Grieg in Android Developers
Max Kot
И все, далее на клиенте читаю первые 2 это ид, далее 2 это длинна
А вдруг длина будет больше? Или id?
источник

MK

Max Kot in Android Developers
Все, получил 26, 26-4, 22 байта длинна
источник

SG

Sergey Grieg in Android Developers
К примеру, id события 101
источник