【问题标题】:using broadcast receiver to dismiss notification使用广播接收器关闭通知
【发布时间】:2014-04-02 03:48:54
【问题描述】:

我这里有一个代码,广播接收器将通过它来敬酒。然而这不是我关心的问题,我想知道如何(在内部)广播接收器类来获取通知并在原始类中编写 addaction 代码时将其关闭,在 addAction 方法中我会指定正在传递的通知?我迷路了我只知道我在这里显示的吐司的代码.....我将如何传递信息以消除广播接收器上的通知,谢谢,或者如果有关于此的帖子,您可以链接它吗?找不到。

   .addAction(android.R.drawable.ic_menu_close_clear_cancel,"Close",PendingIntent.getBroadcast(
                                this,
                                0,
                                new Intent(getString(R.string.notification_broadcast))
                                .putExtra(NotificationAssignment.TOAST_TEXT,
                                        "Why would you Toast on a notification???"),
                                        PendingIntent.FLAG_UPDATE_CURRENT)))

【问题讨论】:

    标签: android notifications broadcastreceiver


    【解决方案1】:

    当您显示通知时,为其分配一个 ID。然后在您的广播接收器中,使用相同的 ID 将其关闭。

    res/某处:

    <item name="notification.blah" type="id" />
    

    在您显示通知的任何地方:

    nm.notify(R.id.notification_blah, notification);
    

    在您的接收器中:

    NotificationManager nm = context.getSystemService(Context.NOTIFICATION_MANAGER);
    nm.cancel(R.id.notification_blah);
    

    【讨论】:

    • 非常感谢,当我在 addAction 方法中调用意图时,另一件事我该怎么称呼??还是直接发送到广播接收器?我需要在清单中添加操作意图吗??
    • 另外,当我尝试取消通知时,ID 会更改,因为我有 3 种不同的通知类型,所以是否有一个 get 方法可以从 nm.notify 检索通知 ID 以在接收器???
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-06-28
    • 1970-01-01
    • 2018-03-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多