禁用声音以进行本地通知

问题描述 投票:0回答:1

我正在尝试使用react-native-firebase显示没有声音的本地通知,这可能吗?

我试过玩AndroidNotification类,但找不到办法做到这一点。

  const notification = new firebase.notifications.Notification()
    .setNotificationId("notificationId")
    .setTitle("Title")
    .setBody("Text")
    .android.setBigText("Big Text")
    .android.setColor("#f04e29")
    .android.setAutoCancel(true)
    .android.setOnlyAlertOnce(true)
    .android.setChannelId("channel")
    .android.setLargeIcon("ic_launcher")
    .android.setSmallIcon("ic_notification");
  firebase.notifications().displayNotification(notification);

我希望显示的通知完全没有任何噪音。

firebase react-native firebase-cloud-messaging react-native-firebase
1个回答
0
投票

根据我自己的经验,必须考虑两件事:

  1. 不能调用setSound方法或不应设置声音属性
  2. 在为Android API级别> = 26开发时,作为Channel方法的第三个参数传递的Android重要性必须设置为Low,Min或None。否则无论如何都会播放默认声音。这是创建频道的示例(例如,在App.tsx的componentDidMount中): const channel = new firebase.notifications.Android.Channel(“testNotification”,“Test Notification”,firebase.notifications.Android.Importance.Low)firebase.notifications()。android.createChannel(channel);

然后显示一个不显眼的通知:

const notification = new firebase.notifications.Notification()
  .setTitle("My notification title")
  .setBody("My notification body");
notification.android.setChannelId("testNotification");
firebase.notifications().displayNotification(notification);
© www.soinside.com 2019 - 2024. All rights reserved.