Jelly Bean でサイズが変更されたときにウィジェットを更新したいだけです。
だから私はこのコードを使用します:
@TargetApi(Build.VERSION_CODES.JELLY_BEAN)
@Override
public void onAppWidgetOptionsChanged(Context context,
AppWidgetManager appWidgetManager, int appWidgetId,
Bundle newOptions) {
Log.d("DEBUG_TAG", "I want to update Widget: "+appWidgetId);
appWidgetManager.updateAppWidget(appWidgetId,
getRemoteViews(context, minWidth, minHeight));
Log.d("DEBUG_TAG", "Widget "+appWidgetId+"should have been updated");
super.onAppWidgetOptionsChanged(context, appWidgetManager, appWidgetId,
newOptions);
}
残念ながら何も起こりません。
私のlogcatは、予想どおりウィジェットを更新する必要があることを明確に示していますが、onUpdateは呼び出されません!
public void onUpdate(Context context, AppWidgetManager appWidgetManager,
int[] appWidgetIds) {
final int N = appWidgetIds.length;
Log.i("", "***Update "+N+" Widget*** ");
for (int i = 0; i < N; i++) {
int appWidgetId = appWidgetIds[i];
Log.i("", "***Widget*** "+appWidgetId );
しかし、何も起こりません。
ウィジェットを作成するときに ID が正しいことを確認しました (私の場合は ID は 29 です) onAppWidgetOptionsChanged が呼び出されるとログに 29 が表示されます ウィジェットが作成されるとログに 29 が表示されます
助けてくれてありがとう。