Виджет приложений onUpdate не вызывается, когда существует метод onReceive
У меня есть следующий код в классе AppWidgetProvider
.
@Override
public void onUpdate(Context context, AppWidgetManager appWidgetManager, int[] appWidgetIds) {
Log.i("Custom", "Update");
}
@Override
public void onReceive(Context context, Intent intent) {
Log.i("Custom", "Recieve");
}
Если я прокомментирую метод onReceive
, метод onUpdate
будет вызываться каждый раз, когда я добавляю виджет на рабочий стол, если я его не запускаю. Любые мысли?
Ответы
Ответ 1
Try:
@Override
public void onUpdate(Context context, AppWidgetManager appWidgetManager, int[] appWidgetIds) {
Log.i("Custom", "Update");
}
@Override
public void onReceive(Context context, Intent intent) {
super.onReceive(context, intent);
Log.i("Custom", "Recieve");
}
Если вы посмотрите на AppWidgetProvider
, вы увидите, что он вызывает метод onUpdate
. Таким образом, вы должны вызвать метод onUpdate
по умолчанию для суперкласса.