Luke Hansford
Luke Hansford

Reputation: 585

How can I update a widget on receiving a broadcast?

I'm working on a widget that displays information from a completely separate app. The separate app sends a broadcast when its data is changed, and I want to refresh/update my widget upon receiving this broadcast.

I can't seem to work out how to update a widget from within a BroadcastReceiver however. Is there a way to do this? Or another method to get the same result?

Upvotes: 1

Views: 1136

Answers (1)

Dmitry Sedukhin
Dmitry Sedukhin

Reputation: 46

If the separate app has special action for its broadcast, you can add the intent filter to the manifest of your widget. Something like this:

<receiver android:name="ExampleAppWidgetProvider" >
    <intent-filter>
        <action android:name="android.appwidget.action.APPWIDGET_UPDATE" />
        <action android:name="SEPARATE_APP_ACTION" />
    </intent-filter>
    <meta-data android:name="android.appwidget.provider"
               android:resource="@xml/example_appwidget_info" />
</receiver>

And just process it in onRecive method of you AppWidgetProvider. HTH.

Upvotes: 1

Related Questions