如何知道用户何时删除了通知

时间:2013-12-13 13:22:13

标签: android android-notifications

我正在开发一个从服务器下载数据的应用程序,并在每次成功下载此数据时发出通知。但是我还需要在用户打开通知或删除通知时发送统计信息。如果用户打开了一个通知,它就很容易发送 - 只需在意图中添加一个布尔键,在活动中只需通过此键执行“发送”代码即可。但是另一个用户操作呢 - 删除通知。这是我的问题 - 我无法创建任何意图因为此操作不会创建任何活动,我怎么知道用户何时删除了通知?

2 个答案:

答案 0 :(得分:1)

  

我怎么知道用户何时删除了通知?

使用setDeleteIntent() on your Notification.Builder

答案 1 :(得分:1)

看看这个例子:

Intent deleteIntent = new Intent(context, SomeActivity.class);
PendingIntent pendingDialog = PendingIntent.getActivity(context, 0, deleteIntent,
              PendingIntent.FLAG_UPDATE_CURRENT);

Notification notification = new NotificationCompat.Builder(context)
  .setContentTitle(context.getString(R.string.title))
  .setContentText(context.getString(R.string.content))
  .setSmallIcon(R.drawable.image)
  .setContentIntent(clickIntent) // executed if clicked
  .setDeleteIntent(deleteIntent) // executed if deleted
  .addAction(R.drawable.action_image, // adds a button 
             context.getString(R.string.do_it), actionIntent);

待定意图也可以是Broadcasts(查看documentation)。

干杯!