android – 有可能以编程方式抛出APPWIDGET_UPDATE的意图吗?

前端之家收集整理的这篇文章主要介绍了android – 有可能以编程方式抛出APPWIDGET_UPDATE的意图吗?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
想要在窗口小部件中的一个按钮来触发小部件类上的APPWIDGET_UPDATE意图强制进行更新,但是我不会在APP中看到APPWIDGET_UPDATE作为静态字段.

这是可能的,怎么会这样做?

Intent intent = new Intent(context,BaseWidgetProvider.class);
intent.setAction({APPWIDGET_UPDATE INTENT HERE})
PendingIntent pendingIntent = PendingIntent.getActivity(context,intent,0);

views.setOnClickPendingIntent(R.id.MyWidgetButton,pendingIntent);

解决方法

是的,这是可能的.您将在AppWidgetManager中找到该操作:

intent.setAction(AppWidgetManager.ACTION_APPWIDGET_UPDATE)

编辑:您将需要提供您要更新的小部件的ID.下面是一个完整的例子.

AppWidgetManager widgetManager = AppWidgetManager.getInstance(context);
ComponentName widgetComponent = new ComponentName(context,YourWidget.class);
int[] widgetIds = widgetManager.getAppWidgetIds(widgetComponent);
Intent update = new Intent();
update.putExtra(AppWidgetManager.EXTRA_APPWIDGET_IDS,widgetIds);
update.setAction(AppWidgetManager.ACTION_APPWIDGET_UPDATE);
context.sendBroadcast(update);
原文链接:https://www.f2er.com/android/310382.html

猜你在找的Android相关文章