假设我创建了一个实例,RemoteViews
它包含两个Button
s。我希望当用户单击这些按钮时 a Service
(或 aBroadcastReceiver
或其他东西)处理此单击。到目前为止,据我所知,有两种方法可以实现此目的:
为这些按钮分配不同的操作,例如
ACTION_BTN_1_CLICKED
和
ACTION_BTN_2_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")
现在我的问题是至少在实践中哪种方法更好?谢谢