Android 处理应用程序小部件';来自BroadcastReceiver的s update()方法

Android 处理应用程序小部件';来自BroadcastReceiver的s update()方法,android,service,broadcastreceiver,Android,Service,Broadcastreceiver,我做了一个示例,在那里我使用服务更新应用程序小部件 现在我想从自定义间隔(运行时间间隔)以编程方式更新应用程序小部件 我如何才能做到这一点?下面是一个如何为AppWidget设置创建更新事件的示例。您可以根据自己的目的对其进行自定义: Intent intent = new Intent(); intent.setAction(ExampleAppWidgetProvider.MY_INTENT_ACTION); Uri data = Uri.withAppendedPath (Uri.pars

我做了一个示例,在那里我使用服务更新应用程序小部件

现在我想从自定义间隔(运行时间间隔)以编程方式更新应用程序小部件


我如何才能做到这一点?

下面是一个如何为AppWidget设置创建更新事件的示例。您可以根据自己的目的对其进行自定义:

Intent intent = new Intent();
intent.setAction(ExampleAppWidgetProvider.MY_INTENT_ACTION);
Uri data = Uri.withAppendedPath (Uri.parse("wordwidget://wordwidget/widgetId/#"),
                String.valueOf(mAppWidgetId));
intent.setData(data);
intent.putExtra(AppWidgetManager.EXTRA_APPWIDGET_ID, mAppWidgetId);

PendingIntent pendingIntent = PendingIntent.getBroadcast(
ExampleAppWidgetConfigure.this, 0, intent,
PendingIntent.FLAG_UPDATE_CURRENT);
AlarmManager alarmManager = (AlarmManager) getSystemService(ALARM_SERVICE);
alarmManager.setRepeating(AlarmManager.RTC, System.currentTimeMillis() + 10000, 10*1000, pendingIntent);
您还应该为BR创建一个额外的意图过滤器,该过滤器将接收带有操作名称的意图:
ExampleAppWidgetProvider.MY\u intent\u action

更新 向广播接收器添加新的意向过滤器,如下所示:

<intent-filter>
    <action android:name="org.android.testwidget.MY_APPWIDGET_UPDATE" />
    <data android:scheme="wordwidget" />
</intent-filter>

然后创建一个将由定义的意图过滤器接收的意图。在我的例子中,
public static final String my\u INTENT\u ACTION=“org.android.testwidget.my\u APPWIDGET\u UPDATE”

意图的数据部分需要为每个AppWidget实例创建单独的意图(因为我想在不同的时间更新每个实例)。之后,您将为BR创建挂起的意图,并使用此PI创建alarmManager。在方法
setRepeating
中,您定义了AppWidget实例的开始时间和间隔。

您能再解释一下吗?