OnUpdate не вызывается в виджетах, хотя я вижу, что android.appwidget.action.APPWIDGET_UPDATE намерен в onreceive

Я работаю с эмулятором с помощью отладчика, и я заметил, что onUpdate не вызван. Когда я добавляю виджет в рабочий экран эмулятора, я вижу, что моя точка останова попадает в метод onReceive. Метод onReceive получает намерение android.appwidget.action.APPWIDGET_UPDATE. Однако функция onUpdate никогда не вызывается. Я считаю, что это правильно определено.

@Override public void onUpdate(Context context ,AppWidgetManager appWidgetManager,int[] appWidgetIds) { // code that sets up remove view and updates appWidgetManager } 

Solutions Collecting From Web of "OnUpdate не вызывается в виджетах, хотя я вижу, что android.appwidget.action.APPWIDGET_UPDATE намерен в onreceive"

Вызвать метод суперкласса в onReceive ()

 @Override public void onReceive(Context context, Intent intent) { // Chain up to the super class so the onEnabled, etc callbacks get dispatched super.onReceive(context, intent); // Handle a different Intent Log.d(TAG, "onReceive()" + intent.getAction()); } 

Если вы переопределите onReceive () в вашем подклассе AppWidgetProvider, то вызываемые вызовы onEnabled, onUpdate и т. Д. Не запускаются, если вы не вызываете суперкласс.

У вас есть настройка активности конфигурации для вашего виджета? Потому что, если вы это сделаете, то onUpdate не вызывается, и это задание по настройке вручную для обновления виджета в первый раз. После этого onUpdate следует вызывать как определено в конфигурации updatePeriod.

У вас это есть в манифесте Android?

  <intent-filter> <action android:name="android.appwidget.action.APPWIDGET_UPDATE" /> </intent-filter>