gpt4 book ai didi

android - React Native Firebase : no custom sound, 无振动

转载 作者:行者123 更新时间:2023-12-02 17:41:21 25 4
gpt4 key购买 nike

我尝试实现通知到达时的功能,手机应该振动并播放某种铃声。

但是,我只能播放手机默认的通知声音。

我正在使用的版本:

    "react": "16.6.0-alpha.8af6728",
"react-native": "0.57.8",
"react-native-firebase": "^5.2.1",

代码:

首先我创建 channel

        const channel = new firebase.notifications.Android.Channel(
'my_channel_id',
'My channel',
firebase.notifications.Android.Importance.Max
)
.setDescription('My Notif')
.setSound("mysound.mp3")
.setVibrationPattern([400, 800, 600, 800, 800, 800, 1000])
.setLockScreenVisibility(firebase.notifications.Android.Visibility.Public)

this.channel.enableVibration(true);

firebase.notifications().android.createChannel(channel);

然后我创建通知

const notification = new firebase.notifications.Notification()
.setNotificationId('notificationId')
.setTitle('Some notification')
.setBody('Some body')

notification.android.setSmallIcon('ic_launcher');
notification.android.setLargeIcon('ic_launcher');
notification.android.setChannelId('my_channel_id');

notification.android.addAction(new firebase.notifications.Android.Action("answer", "ic_launcher", "Open"))

notification.android.setColorized(true)
notification.android.setColor('#00a8ff')
notification.android.setOnlyAlertOnce(true)
notification.android.setPriority(firebase.notifications.Android.Priority.Max)
notification.android.setVibrate([400, 800, 600, 800, 800, 800, 1000]);

firebase.notifications().displayNotification(notification);

通知以默认声音显示。 mp3文件位于/android/app/src/main/res/raw/。它始终播放默认的通知“bling”声音。

控制台中没有显示任何错误。

adb logcat 说了这样的话,但我不确定它们是否与此相关:

02-22 21:20:30.848 4916 4916 D EdgeLightingManager: showForNotification : isInteractive=true, isHeadUp=true, color=0, sbn = StatusBarNotification(pkg=com.my user=UserHandle{0} id=788267878 tag=null key=0|com.my|788267878|null|10188: Notification(channel=my_channel_id pri=2 contentView=null vibrate=null sound=null defaults=0x0 flags=0x8 color=0xff00a8ff actions=1 number=0 vis=PRIVATE semFlags=0x0 semPriority=0 semMissedCount=0))

这些设置位于 AndroidManifest.xml 中

<uses-permission-sdk-23 android:name="android.permission.VIBRATE"/>
<uses-permission android:name="android.permission.VIBRATE" />

我已检查手机设置,所有声音均已开启且振动已启用。

那么,我的代码应该有效吗?谢谢!

顺便说一句,我在 iOS 中也听不到声音,但我没有使用 firebase :)

最佳答案

对于振动,这对我有用

.android.setVibrate([1000, 1000])
.android.setDefaults([firebase.notifications.Android.Defaults.Vibrate])

关于android - React Native Firebase : no custom sound, 无振动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54833869/

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