禁用本地通知的声音



我正在尝试使用 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);

我希望通知在没有任何噪音的情况下显示。

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

  1. 无需调用 setSound 方法,也不应设置任何声音属性
  2. 针对 Android API 级别>=26 进行开发时,作为通道方法的第三个参数传递的 Android 重要性必须设置为"低"、"最小"或"无"。否则,仍会播放默认声音。因此,创建通道的示例(例如,在App.tsx的组件DidMount中):

    const channel = new firebase.notifications.Android.Channel( "测试通知", "测试通知", firebase.notifications.Android.Important.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);

相关内容

  • 没有找到相关文章

最新更新