Вызов действия на HomeScreenWidget нажмите - PullRequest
0 голосов
/ 17 июня 2011

Я пытаюсь открыть свою активность, когда пользователь нажимает кнопку в моем виджете HomeScreen. Но я думаю, что приложение не отвечает на мой клик. Вот мой фрагмент кода:

RemoteViews remoteViews = new RemoteViews(context.getPackageName(),R.layout.layout_appwidget);  
Intent launchActivity = new Intent();
launchActivity.setClass(context,UpdatesScreen.class);
launchActivity.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
PendingIntent pendingIntent = PendingIntent.getActivity(context,0, launchActivity, 0);
remoteViews.setOnClickPendingIntent(R.id.iv_widget, pendingIntent);
ComponentName thisWidget = new ComponentName(context, MyAppWidgetProvider.class.getName());
AppWidgetManager manager = AppWidgetManager.getInstance(context);
manager.updateAppWidget(thisWidget, remoteViews);

Я скопировал тот же код в onUpdate, а также метод onEnabled класса MyAppWidgetProvider. Но все равно он не работает вообще.

Я прочитал много постов по этой проблеме, но все используют один и тот же код. Я делаю что-то неправильно?? Как правильно сделать то же самое.

Заранее спасибо.

1 Ответ

0 голосов
/ 18 марта 2013

Я нашел ошибку. Размещение моего ответа, чтобы помочь кому-то, сталкивающемуся с той же проблемой.

На самом деле, я переопределял как метод onUpdate(), так и onReceive(). Если мы переопределим onReceive(), в этом случае onUpdate() никогда не будет вызван. и я не использовал ACTION_APPWIDGET_UPDATE как действие в onReceive().

...