Most visited

Recently visited

Added in API level 3

AppWidgetProvider

public class AppWidgetProvider
extends BroadcastReceiver

java.lang.Object
   ↳ android.content.BroadcastReceiver
     ↳ android.appwidget.AppWidgetProvider


帮助实现AppWidget提供者的便利课程。 您可以使用AppWidgetProvider执行的所有操作都可以使用常规的BroadcastReceiver AppWidgetProvider仅解析onReceive(Context,Intent)收到的Intent中的相关字段,并使用接收到的附加内容调用钩子方法。

扩展这个类并覆盖一个或多个 onUpdate(Context, AppWidgetManager, int[])onDeleted(Context, int[])onEnabled(Context)或者 onDisabled(Context)方法来实现自己的AppWidget功能。

Developer Guides

有关如何编写应用程序窗口小部件提供程序的更多信息,请阅读 App Widgets开发人员指南。

Summary

Public constructors

AppWidgetProvider()

构造函数初始化AppWidgetProvider。

Public methods

void onAppWidgetOptionsChanged(Context context, AppWidgetManager appWidgetManager, int appWidgetId, Bundle newOptions)

当这个小部件已经按照新尺寸 ACTION_APPWIDGET_OPTIONS_CHANGED时,被称为响应 ACTION_APPWIDGET_OPTIONS_CHANGED广播。

void onDeleted(Context context, int[] appWidgetIds)

在一个或多个AppWidget实例已被删除时调用以响应ACTION_APPWIDGET_DELETED广播。 重写此方法以实现您自己的AppWidget功能。

void onDisabled(Context context)

调用以响应ACTION_APPWIDGET_DISABLED广播,该广播在删除此提供程序的最后一个AppWidget实例时发送。 重写此方法以实现您自己的AppWidget功能。

void onEnabled(Context context)

在针对此提供者的AppWidget实例化时响应ACTION_APPWIDGET_ENABLED广播而被调用。 重写此方法以实现您自己的AppWidget功能。

void onReceive(Context context, Intent intent)

实现 onReceive(Context, Intent)将调用分派给AppWidgetProvider上的其他各种方法。

void onRestored(Context context, int[] oldWidgetIds, int[] newWidgetIds)

当此AppWidget提供程序的实例已从备份中恢复时,调用以响应ACTION_APPWIDGET_RESTORED广播。 如果您的提供程序维护有关其小部件实例的任何持久性数据,请覆盖此方法以将旧AppWidgetIds重新映射为新值并更新任何可能相关的其他应用程序状态。

这个回调会立即跟随 onUpdate(Context, AppWidgetManager, int[])的调用,以便您的提供者可以立即生成适用于其最新恢复的实例的新RemoteView。

void onUpdate(Context context, AppWidgetManager appWidgetManager, int[] appWidgetIds)

当这个AppWidget提供者被要求为一组AppWidget提供RemoteViews ,被调用以响应ACTION_APPWIDGET_UPDATEACTION_APPWIDGET_RESTORED广播。 重写此方法以实现您自己的AppWidget功能。

Inherited methods

From class android.content.BroadcastReceiver
From class java.lang.Object

Public constructors

AppWidgetProvider

Added in API level 3
AppWidgetProvider ()

构造函数初始化AppWidgetProvider。

Public methods

onAppWidgetOptionsChanged

Added in API level 16
void onAppWidgetOptionsChanged (Context context, 
                AppWidgetManager appWidgetManager, 
                int appWidgetId, 
                Bundle newOptions)

当这个小部件已经按照新的尺寸 ACTION_APPWIDGET_OPTIONS_CHANGED时,被调用以响应 ACTION_APPWIDGET_OPTIONS_CHANGED广播。

Parameters
context Context: The Context in which this receiver is running.
appWidgetManager AppWidgetManager: A AppWidgetManager object you can call updateAppWidget(ComponentName, RemoteViews) on.
appWidgetId int: The appWidgetId of the widget whose size changed.
newOptions Bundle: The appWidgetId of the widget whose size changed.

也可以看看:

onDeleted

Added in API level 3
void onDeleted (Context context, 
                int[] appWidgetIds)

在一个或多个AppWidget实例已被删除时调用以响应ACTION_APPWIDGET_DELETED广播。 重写此方法以实现您自己的AppWidget功能。

Parameters
context Context: The Context in which this receiver is running.
appWidgetIds int: The appWidgetIds that have been deleted from their host.

也可以看看:

onDisabled

Added in API level 3
void onDisabled (Context context)

调用以响应ACTION_APPWIDGET_DISABLED广播,该广播在删除此提供程序的最后一个AppWidget实例时发送。 重写此方法以实现您自己的AppWidget功能。

Parameters
context Context: The Context in which this receiver is running.

也可以看看:

onEnabled

Added in API level 3
void onEnabled (Context context)

在针对此提供者的AppWidget实例化时响应ACTION_APPWIDGET_ENABLED广播而调用。 重写此方法以实现您自己的AppWidget功能。

当此提供最后AppWidget被删除, ACTION_APPWIDGET_DISABLED由AppWidget管理器发送的,并且onDisabled(Context)被调用。 如果在此之后,再次创建该提供者的AppWidget,则将再次调用onEnabled()。

Parameters
context Context: The Context in which this receiver is running.

也可以看看:

onReceive

Added in API level 3
void onReceive (Context context, 
                Intent intent)

实现 onReceive(Context, Intent)将调用分派到AppWidgetProvider上的各种其他方法。

Parameters
context Context: The Context in which the receiver is running.
intent Intent: The Intent being received.

onRestored

Added in API level 21
void onRestored (Context context, 
                int[] oldWidgetIds, 
                int[] newWidgetIds)

当此AppWidget提供程序的实例已从备份中恢复时,调用以响应ACTION_APPWIDGET_RESTORED广播。 如果您的提供程序维护有关其小部件实例的任何持久性数据,请覆盖此方法以将旧AppWidgetIds重新映射为新值并更新任何可能相关的其他应用程序状态。

这个回调会立即跟随 onUpdate(Context, AppWidgetManager, int[])的调用,以便您的提供者可以立即生成适用于其最新恢复的实例的新RemoteView。

onUpdate

Added in API level 3
void onUpdate (Context context, 
                AppWidgetManager appWidgetManager, 
                int[] appWidgetIds)

当这个AppWidget提供者被要求为一组AppWidget提供RemoteViews ,被调用以响应ACTION_APPWIDGET_UPDATEACTION_APPWIDGET_RESTORED广播。 重写此方法以实现您自己的AppWidget功能。

Parameters
context Context: The Context in which this receiver is running.
appWidgetManager AppWidgetManager: A AppWidgetManager object you can call updateAppWidget(ComponentName, RemoteViews) on.
appWidgetIds int: The appWidgetIds for which an update is needed. Note that this may be all of the AppWidget instances for this provider, or just a subset of them.

也可以看看:

Hooray!