2013-10-10 2 views
2

Как я могу зарегистрировать свой виджет приложений (виджет главного экрана), чтобы слушать местные широковещательные сообщения, которые отправляют более LocalBroadcastManager?LocalBroadcastManager с Widget

+0

Когда вы пишете «Виджет», вы имеете в виду виджет приложения для главного экрана? – CommonsWare

+0

Да, извините за недоразумение – nrofis

ответ

3

Виджет приложения действительно представляет собой набор из View s в процессе другого приложения (например, на главном экране). Следовательно, в вашем процессе нет ничего, что могло бы «слушать» что угодно.

Если вы хотите обновить виджет приложения, просто обновите его, используя AppWidgetManager и updateAppWidget().

+0

Поставщик виджета транслирует приемник. Я просто хочу знать, есть ли способ получить сообщение LocalBroadcast – nrofis

+0

@nrofis: «Поставщик виджета - широковещательный приемник» - только для того, чтобы отвечать на системные события, связанные с виджетами приложения, например, когда он удаляется , И поскольку манифест-зарегистрированный «BroadcastReceiver» живет в течение миллисекунды или около того и уходит, он не может слушать сообщения LocalBroadcastManager. Когда вы хотите обновить виджет приложения, просто обновите его, используя «AppWidgetManager» и «updateAppWidget()». – CommonsWare

+0

Я вижу ... Поэтому система иногда «вызывает» onUpdate, а затем мне нужно проверить значения, которые я хочу показать? – nrofis

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