Как я могу перезвонить в Intent? - PullRequest
2 голосов
/ 23 октября 2011

Я хочу запустить Сервис с намерением, которое содержит обратный вызов.Как я могу это сделать?Я хочу использовать startService (...), а не механизм привязки.

1 Ответ

3 голосов
/ 23 октября 2011

Я бы рекомендовал использовать пользовательскую трансляцию, которая будет отправлена ​​службой.Вы можете зарегистрироваться для этой трансляции в своей деятельности и поймать это.Это было бы стандартным решением для обратного вызова службы .Вы не можете помещать сложные данные (например, ссылки) в свои намерения, только простые и примитивные данные ...

Настраиваемые материалы и трансляция с приемниками

Обновление на основе комментария

Как интерпретировать затем эту презентацию (слайд 11, номер в левом нижнем углу)?

В этом случае они используютСервисный помощник.Я думаю, что они запускают сервер с startService, чтобы символизировать, что служба должна оставаться без сна.bindService остановит службу, когда действие привязки будет уничтожено.В любом случае сервисный помощник позвонит bindService, потому что он говорит 10. Binder callback.Таким образом, в конце концов, помощник, кажется, является обязательной оберткой для запрашивающего действия, поэтому действия не должны иметь дело со всей коммуникацией службы.

Вот как я бы это интерпретировал ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...