0
我需要一種方法來確定哪個AppWidgetProvider對於配置活動中當前的 窗口小部件是活動的。我目前的解決方案在某些設備上導致NullException ,appWidgetInfo.provider以某種方式爲空。AppWidgetProvider,如何確定特定窗口小部件的AppWidgetProvider
是否有更好的方法來確定哪個AppWidgetProvider對應於 特定的appWidgetId。
AppWidgetManager appWidgetManager = AppWidgetManager.getInstance(context);
AppWidgetProviderInfo appWidgetInfo = appWidgetManager.getAppWidgetInfo(widgetId);
Intent intent = new Intent();
intent.putExtra(
AppWidgetManager.EXTRA_APPWIDGET_ID,
widgetId);
intent.setAction(RemoteWidgetViewsFactory.KEY_WIDGET_SETTING_REFRESH);
String appWidgetProviderName = appWidgetInfo.provider.getClassName();
if(appWidgetProviderName.equals(WidgetProvider.class.getName())) {
intent.setClass(context, WidgetProvider.class);
}
else if(appWidgetProviderName.equals(WidgetProviderLarge.class.getName())) {
intent.setClass(context, WidgetProviderLarge.class);
}
sendBroadcast(intent);
啊,太好了......謝謝 – user634545