У меня есть два устройства (например, Android), одно работает как сервер, а второе как клиент.
Цель приложения, например, состоит в том, чтобы сделать оба устройства (амбиции более2 устройства) одновременно воспроизводить песню.
Когда клиент входит в комнату , когда сервер уже играет , сервер отправляет несколько сообщений, используя TcpClient.Write()
в следующем порядке:
UPDATE_PARTICIPANTS - синхронизировать имена клиентов между подключенными устройствами и новым подключенным клиентом.
PAUSE - приостановить текущую воспроизводимую песню, не относящуюся к новому клиенту, релевантную для других подключенных клиентов.
PREPARE -Подготовьте клиент MediaPlayer (получите файл MP3 с сервера).
SYNC - найдите местоположение сервера в файле.
Проблема заключается в том, что клиент получает все 3 сообщения в одномПрочитайте, поэтому обрабатывайте это сообщение как одно сообщение, вызывая ошибки и игнорируя другие сообщения.
IE:
510 | ServerName | ClientName520 | http://192.168.1.1:80
Где 510 - код протокола для UPDATE, а 520 - код протокола для Prepare, '|'является разделителем, а ServerName - это имя клиента сервера.
Заранее спасибо.