Как обновить виджеты из службы?

У меня есть фоновый сервис, который можно настроить для выполнения каких-либо действий каждые x минут. Я хочу реализовать виджет, который обновляется каждый раз, когда моя служба выполняет это действие. Тем не менее, я не могу получить метод onUpdate моего AppWidgetProvider, вызванный каким-либо образом, за исключением добавления виджета на рабочий стол.

Я попытался отправить APPWIDGET_UPDATE, но onUpdate не получил вызов, хотя AppWidgetProvider действительно получил намерение с момента вызова метода onReceive. Есть ли способ инициировать обновления виджета из службы?

Solutions Collecting From Web of "Как обновить виджеты из службы?"

Просто сделайте себе RemoteViews и обновите виджеты непосредственно в Service . Вы получите свой AppWidgetManager через:

 AppWidgetManager mgr=AppWidgetManager.getInstance(this); 

Все остальное как обычно.

Примечание. Если вы действительно хотите заставить существующий AppWidgetProvider выполнять эту работу, отправьте широковещательную рассылку с пользовательским действием на ваш компонент и вызовите onUpdate() самостоятельно из onReceive() когда вы ее получите.