我的应用存在一个错误,该错误会发送不同的推送通知,直到现在每个通知都有自己的频道ID,因此用户为每个新通知都拥有一个新频道,然后可以通过切换启用/禁用该频道。现在已修复了该错误,但是我想以编程方式删除旧的不必要的频道,我找到了这样做的方法:
// The id of the channel.
val notificationManager = getSystemService(Context.NOTIFICATION_SERVICE) as NotificationManager
val id: String = "my_channel_01"
notificationManager.deleteNotificationChannel(id)
但是由于每个频道都是由随机生成的ID创建的,并且该ID已被丢弃,所以我无法通过其ID删除该频道。
有没有办法列出用户获得的所有频道ID,或者有其他方式可以删除不知道该ID的旧频道
答案 0 :(得分:1)
遍历此列表,并调用deleteNotificationChannel(id)
进入不必要/未知的渠道(NotificationChannel
具有getId()方法)
答案 1 :(得分:0)
如果通知管理器,您是否尝试过cancelAll()
方法
notificationManager.cancelAll()