Есть ли способ привязать удаленный сервис сокетов и получать сообщения от клиента в Android? - PullRequest
1 голос
/ 31 декабря 2011

Я пытаюсь сделать следующее:

  1. создать службу, которая прослушивает сокет.
  2. запустить другое приложение, которое связывается с этой службой и получает сообщения от клиентасокета (и, возможно, что-то отправить обратно клиенту).

У меня есть обратные вызовы прослушивателя событий для этой службы и возвращены как Binder, но я не уверен, может ли aidl обработать прослушиватели событий.Если нет, есть ли другой способ добиться этого?Заранее спасибо!

1 Ответ

0 голосов
/ 10 января 2012

Наконец, я выбрал альтернативный вариант:
Я создаю синхронизированный буфер сообщений, автором которого является обратный вызов в потоке сокета, а читатель отображается в файле aidl.
Хотя это и немного избыточно, это единственный способ, который я могу найти для достижения своей цели на данный момент.

public class CBuffer {
    private List<String> list =
        new ArrayList<String>();

    public synchronized void add(String cmd) {
        list.add(cmd);
        notifyAll();
    }

    public synchronized String get()
        throws InterruptedException
    {
        while (list.size() == 0)
            wait();
        return list.remove(0);
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...