Отправка и получение из сокета в Android Java

#java #android #sockets

#java #Android #сокеты

Вопрос:

Привет всем, у меня есть небольшой вопрос.

  • У меня есть серверное клиентское приложение, в котором клиент будет отправлять данные асинхронно.
  • Сервер получит сообщение и проанализирует его.
  • Если сервер получит неверные данные, он отправит клиенту сообщение об ошибке.

Теперь моя проблема заключается в клиенте, я буду отправлять данные непрерывно, не заботясь о подтверждении пример:

  • Предположим, я отправляю около 1000 сообщений от клиента. Клиент отправляет все данные в сокет.

  • При возникновении ошибки сервер также поместит сообщение об ошибке в сокет.

  • Но может произойти и то, и другое: отправить данные с клиента или отправить сообщение с сервера.

    Каков наилучший способ справиться с этим случаем?

Если возникает какая-либо ошибка и клиент получает сообщение об ошибке от сервера, то клиент должен повторно отправить данные. Один из способов — отправить данные и дождаться подтверждения. Я не хочу, чтобы клиент ждал подтверждения сервера, потому что вероятность ошибки очень мала. Может ли кто-нибудь подсказать мне какое-нибудь хорошее решение для этого?

Комментарии:

1. Я бы не стал рассчитывать на небольшую вероятность ошибки, особенно когда речь идет о мобильных устройствах.

Ответ №1:

В сообщении об ошибке должен быть указан «индекс», по которому клиент должен перезапустить отправку.