Нужно ли писать второй сервис для подключения к устройству через BLE?
Имеется приложение которое подключается к одному устройству по BLE и обменивается с ним данными, теперь стоит задача подключить сразу два таких устройства и параллельно обмениваться с ними данными. Сначала я пытался просто создать еще одну переменную класса сервиса и подключиться к другому устройству, подключиться вроде как удалось, но все это работало некорректно.
Вопрос нужно ли писать еще один сервис для подключения к двум одинаковым устройствам ?
Если нужно то надо ли писать два Receiver-а для обработки данных с каждого сервиса, или он бывает один для всех?
Денис Загаевский: ну есть класс, который унаследован от класса сервис, который и выполняет необходимую работу. Выше я сказал что к 1 устройству я подключился, естественно в коде была переменная этого класса, сначала я подумал что можно просто создать еще одну переменную этого класса моего сервиса, и это сработает, это на самом деле сработало, и я подключился к двум устройствам, но различать кто что отправляет я не смог
Денис Загаевский: я решил задачу, нужно было написать еще один сервис, так как устройства одинаковые я мог просто скопировать старый сервис и дать копии другое название, что я собственно и сделал
DivelNick: возможно у нас тут терминогическое несовпадение. Когда говорят про сервис в андроиде, обычно имеют в виду android.app.Service и его наследников. И этот сервис описанным вами способом не работает.
Денис Загаевский, кажется, под "переменной класса" имелось ввиду не "экземпляр класса", а "член класса". DivelNick, работа с несколькими BLE-устройствами обычно осуществляется при помощи очередей. Вы ведь не будете создавать новый сервис для 3-го, 4-го, N-го устройства, верно? :)