Предположим, я создал экземпляр RemoteViews
, и он содержит два Button
. Я хочу, чтобы когда пользователь нажимал эти кнопки, Service
(или BroadcastReceiver
или что-то еще) обрабатывал этот щелчок. Насколько мне известно, для достижения этой цели есть два пути:
Назначьте этим кнопкам различные действия, например
ACTION_BTNRemoteViews
CLICKED
и
ACTION_BTNButton
CLICKED
, а затем получите действие в Сервисе черезintent.getAction()
и, наконец, сервис выполняет соответствующую задачуПоместите немного больше в объект Intent, который заключен через
PendingIntent
, например:intent.putStringExtra("which_button", "btn1"); // for Button 1
иintent.putStringExtra("which_button", "btn2"); // for Button 2
С другой стороны в Сервисе я могу различить этот сигнал через
intent.getExtras().getString("which_button")
Теперь мой вопрос: какой подход лучше, по крайней мере, на практике? Спасибо