Метод onUpdate класса виджета
public void onUpdate(Context context, AppWidgetManager appWidgetManager,
int[] appWidgetIds) {
super.onUpdate(context, appWidgetManager, appWidgetIds);
RemoteViews remoteViews = new RemoteViews(context.getPackageName(), R.layout.widget_layout);
Intent active = new Intent(context, LedWidget.class);
active.setAction(ACTION_WIDGET_RECEIVER);
if(!led_set_on) {
active.putExtra("power_on", true);
} else {
active.putExtra("power_on", false);
}
PendingIntent actionPendingIntent = PendingIntent.getBroadcast(context, 0, active, 0);
remoteViews.setOnClickPendingIntent(R.id.led_widget, actionPendingIntent);
appWidgetManager.updateAppWidget(appWidgetIds, remoteViews);
}
Первый тап срабатывает (включает светодиод камеры), второй - выдаёт ошибку в приложении, но по закрытию диалога светодиод гаснет, третий-четвёртый - включение/выключение без ошибок, а дальше всё, виджет не отзывается, и оживает только после запуска приложения.