Я планирую приложение для Android, которое связывается с программой для ПК через сокет TCP.Приложение будет иметь несколько Активов (макет), каждая из которых представляет отдельное физическое устройство, подключенное к ПК.Я хотел бы иметь сокет TCP, который подключается к серверу ПК, когда приложение сначала открывается, а затем работает в фоновом режиме.Когда у пользователя открыто действие для устройства A, сокет TCP должен непрерывно отправлять запросы хосту о состоянии устройства A, а затем обновлять пользовательский интерфейс самыми последними данными.
Я просматривал различныевозможности для запуска фоновых задач, и я не уверен, какой вариант лучше в этом случае.Должны ли мои операции TCP непрерывно выполняться в потоке?Я понимаю, что Сервис должен использоваться только для неблокирующих операций, и я не могу гарантировать, что сетевые транзакции будут происходить мгновенно (особенно, если соединение с сетью потеряно).
Если бы я должен был запустить связь вКак лучше всего предупредить пользовательский интерфейс о поступлении новых данных?Кроме того, когда пользователь переключается на другое действие, каков наилучший способ предупредить поток, чтобы он начал запрашивать информацию о другом устройстве?