Android onEnabled / onDisabled никогда не вызывал

У меня возникла проблема с запуском методов onEnabled и onDisabled для AppWidgetReciever. У меня есть указанные действия, я также регистрирую каждое действие в методе onRecieve, но только два действия, которые я получаю, это «APPWIDGET_UPDATE» и «APPWIDGET_DELETED». У меня есть googled для этого решения, но, к сожалению, нет. Вот мой код:

Часть манифеста:

<receiver android:name=".ScheduleWidgetProvider" > <intent-filter> <action android:name="android.appwidget.action.APPWIDGET_ENABLED" /> <action android:name="android.appwidget.action.APPWIDGET_DISABLED" /> <action android:name="android.appwidget.action.APPWIDGET_UPDATE" /> <action android:name="android.appwidget.action.APPWIDGET_DELETED" /> </intent-filter> <meta-data android:name="android.appwidget.provider" android:resource="@xml/provider_xml" /> </receiver> 

Provider_xml:

 <?xml version="1.0" encoding="utf-8"?> <appwidget-provider xmlns:android="http://schemas.android.com/apk/res/android" android:minWidth="180dp" android:minHeight="40dp" android:updatePeriodMillis="60000" android:initialLayout="@layout/widget_layout" android:configure="org.zivkovic.schedule.ConfigurationActivity" > </appwidget-provider> 

ScheduleWidgetProvider:

 public class ScheduleWidgetProvider extends AppWidgetProvider { { Log.w("Schedule", "ScheduleWidgetProviderRequested"); } @Override public void onReceive(Context context, Intent intent) { Log.w("Schedule", "On recieve " + intent.getAction()); super.onReceive(context, intent); } @Override public void onEnabled(Context context) { Log.w("Schedule", "OnEnabled called"); ... super.onEnabled(context); } @Override public void onDisabled(Context context) { Log.w("Schedule", "OnDisabled called"); ... super.onDisabled(context); } @Override public void onUpdate(Context context, AppWidgetManager appWidgetManager, int[] appWidgetIds) { for (int i = 0; i < appWidgetIds.length; i++) { .... } super.onUpdate(context, appWidgetManager, appWidgetIds); } } 

Любая помощь приветствуется. Благодаря!

Хорошо, удаление моего приложения с телефона сделало трюк. Не могу понять, почему его удалил. С тем, у кого есть такая же проблема, удалите и переустановите приложение.

Я знаю, что это старый пост, но кажется, что проблема заключается в onReceive(Context context, Intent intent) .

Как представляется, он имеет приоритет при обработке событий получателя, не AppWidgetProvider назначенным методам AppWidgetProvider быть вызванным при получении действия.

Существует два возможных решения; Либо обрабатывать действие намерения в методе onReceive , либо удалять этот метод и переопределять назначенные методы действий.

Не забудьте включить действия в фильтр намерений.