2010-12-03 17 views
11

Tengo el siguiente código en mi clase AppWidgetProvider.App Widget onUpdate no se ha llamado cuando existe el método onReceive

@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"); 
} 

Si comento a cabo el método onReceive el método onUpdate se llamará cada vez que añadir el widget a la pantalla de inicio, si no no se ejecuta. ¿Alguna idea?

Respuesta

16

Probar:

@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"); 
} 

Si usted toma un vistazo al código AppWidgetProvider, verá que invoca el método onUpdate. Por lo tanto, debe llamar al método predeterminado onUpdate de la superclase.

+0

¡Gracias, realmente debería haberlo recogido yo! – Leo

Cuestiones relacionadas