Android 使用RemoteView从BroadcastReceiver更新更多小部件
我遵循以下步骤:使我的广播接收器工作 实际上,所有AlarmManager都工作正常,但每次调用onReceive时,所有小部件都使用相同的数据进行更新Android 使用RemoteView从BroadcastReceiver更新更多小部件,android,widget,broadcastreceiver,remoteview,Android,Widget,Broadcastreceiver,Remoteview,我遵循以下步骤:使我的广播接收器工作 实际上,所有AlarmManager都工作正常,但每次调用onReceive时,所有小部件都使用相同的数据进行更新 public class AlarmManagerBroadcastReceiver extends BroadcastReceiver { @Override public void onReceive(final Context context, Intent intent) { fin
public class AlarmManagerBroadcastReceiver extends BroadcastReceiver
{
@Override
public void onReceive(final Context context, Intent intent)
{
final String address = intent.getStringExtra("mykey");
...
final RemoteViews remoteViews = new RemoteViews(context.getPackageName(), R.layout.widget);
// downloading data
...
// decoding data
...
remoteViews.setTextViewText(R.id.mykey, newvalue);
ComponentName thiswidget = new ComponentName(context, AppWidgetProvider.class);
AppWidgetManager appWidgetManager = AppWidgetManager.getInstance(context);
appWidgetManager.updateAppWidget(thiswidget, remoteViews);
}
}
你在哪里调用更新应用程序小部件?我应该从OnRevive调用AppWidgetProvider的onUpdate吗?你的onUpdate不会自动调用吗?我需要每3分钟更新一次小部件,所以我设置了android:updatePeriodMillis=“0”updatePeriodMillis只会每30分钟更新一次,即使你将其设置为小于30分钟。