Android - 通知警报声

时间:2012-05-16 14:38:56

标签: android notifications alarmmanager alarm

我已经实现了一个通知,声音如下:

    PendingIntent pi = PendingIntent.getActivity(context, id, notificationIntent, PendingIntent.FLAG_UPDATE_CURRENT);
    Notification note = new Notification(R.drawable.icon, "Alarm", System.currentTimeMillis());
    note.setLatestEventInfo(context, "Alarm", title + " (alarm)", pi);
    Uri alarmSound = RingtoneManager.getDefaultUri(RingtoneManager.TYPE_ALARM);
    if(alarmSound == null){
        alarmSound = RingtoneManager.getDefaultUri(RingtoneManager.TYPE_RINGTONE);
        if(alarmSound == null){
            alarmSound = RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION);
        }
    }
    note.sound = alarmSound;
    note.defaults |= Notification.DEFAULT_VIBRATE;
    note.flags |= Notification.FLAG_AUTO_CANCEL;
    manager.notify(id, note);

闹钟的声音播放,但我面临的问题是它一直播放,直到我向下拖动通知栏。在播放时,我正在显示一个活动作为对话框(弹出窗口),其中包含有关当前闹钟播放的一些信息。 我希望能够在对话框中的按钮(弹出活动)中取消此警报声音。

我怎样才能做到这一点? 感谢。

1 个答案:

答案 0 :(得分:0)

要取消声音,只需在对话框按钮中{@ 1}}点击该ID就是您使用manager.cancel(id)

创建通知时设置的ID