gpt4 book ai didi

react-native - 通知 - 清除 android 通知托盘中的所有通知

转载 作者:行者123 更新时间:2023-12-03 09:25:48 25 4
gpt4 key购买 nike

我正在向我的应用程序发送多个通知。我想要实现的是每当用户单击一个通知时,通知托盘中的所有通知都会消失。

我试过添加

notification.android.setAutoCancel(true)

它只对一个通知(被点击的那个)起作用

我也试过:
firebase.notifications().removeAllDeliveredNotifications() 

这没有任何影响。

我怎样才能做到这一点?

这是我的完整代码:
      componentDidMount() {
firebase.notifications().removeAllDeliveredNotifications()

this.notificationDisplayedListener = firebase.notifications().onNotificationDisplayed((notification) => {
});

this.notificationListener = firebase.notifications().onNotification(async (notification) => {
// Process your notification as required
notification.android.setAutoCancel(true)
firebase.notifications().removeAllDeliveredNotifications()
}



async componentWillMount() {
this.notificationDisplayedListener = firebase.notifications().onNotificationDisplayed((notification) => {
});
this.notificationListener = firebase.notifications().onNotification((notification) => {
});

this.notificationDisplayedListener();
this.notificationListener();
}

最佳答案

尝试移动删除通知的代码
( removeAllDeliveredNotifications() ) 来自 onNotification收听者 onNotificationOpened听众。当您尝试在到达时删除通知时,可能存在竞争条件。

还因为您想在用户点击一个通知时清除通知。

附注。将通知监听器保留在 componentDidMount 中或 componentWillMount , 不是都。

关于react-native - 通知 - 清除 android 通知托盘中的所有通知,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56157296/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com