2010-09-20 4 views
0

Я делаю IM-клиент для андроида, и я хочу знать, как осуществлять связь между Сервисом и активностью.Обмен сообщениями об услугах и деятельности

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

В своей деятельности я создаю службу и привязываю ее к ней. У меня есть интерфейс aidl для обмена данными между службой и деятельностью с этим методами:

String[] getContacts(); 
    String[] getPressence(); 
    int setConnection(int type); 
    void logOut(); 

До сих пор так хорошо, что я могу сделать соединение с GTalk, я могу получить контакты и статус, но теперь я хочу выполнять функцию в активности, которая слушает, когда служба получает сообщение и обновляет пользовательский интерфейс ...

Для этого я сделал еще один файл помощи с методом void receivedMessage(String message); и всякий раз, когда служба получает сообщение, я вызываю этот метод, в действии я отображаю сообщение, переданное в сообщении String, и получаю исключение NullPointer.

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

спасибо!

ответ

0

Я решил проблему, я только должен был ссылаться на слушателя из активности, чтобы служба использовала слушателя.

Смежные вопросы