Я делаю клиент обмена мгновенными сообщениями для Android и хочу знать, как осуществлять связь между службой и действием.
У меня есть служба, которая устанавливает соединение с gtalk, получает контакты, прослушивает входящие сообщения..., и у меня есть активность, которая является пользовательским интерфейсом моего приложения.
В действии я создаю службу и привязываю к ней действие. У меня есть вспомогательный интерфейс для связи между сервисом и действием с помощью следующих методов:
String[] getContacts();
String[] getPressence();
int setConnection(int type);
void logOut();
Пока все хорошо, я могу подключиться к gtalk, я могу получить контакты и статус, но теперь я хочу сделать функцию в действии, которая прослушивает, когда служба получает сообщение и обновляет пользовательский интерфейс...
Для этого я создал еще один файл помощи с методом void receivedMessage(String message);
, и всякий раз, когда служба получает сообщение, я вызываю этот метод, в действии я отображаю сообщение, переданное в строке сообщения, и получаю исключение NullPointer.
Должен ли я получить сообщение в обработчике или с помощью некоторых методов синхронизации или асинхронности? Я новичок в Android, и теперь я изучаю часть услуг, поэтому, пожалуйста, помогите мне.
Большое спасибо!