Я создал приложение для отправки данных на сервер, и сервер отвечает на ответ.Приложение отлично работает на всех устройствах Samsung.Я предполагал, что это было закончено, но затем я получил новый телефон, pocophone F1 от Xiaomi.Он работает 50/50 в первый раз, но во второй раз он блокируется в .read () / .readline () (ответ, содержащий / r / n).Затем запускается, чтобы попробовать другие, и это не работает также на huawei.
Как отладить, почему именно read () блокирует?
На Samsung это работает 100/100 раз.В других случаях он достигает 2/100 раз и намного медленнее достигает .read (), а не -1.
Вопрос о сервере: (возможно, я делаю это неправильно) Должен ли я закрыть сокет послеотправляете ответ?(Я не хочу иметь живое соединение, просто запросите ответ, получите ответ.) В данный момент я закрываю сокет на стороне клиента, если закончил читать.(Но, как было сказано выше, иногда это никогда не заканчивалось и не доходило до .read ()).