Flutter iOS 和 Android 中的 FCM 自定义声音

Posted

技术标签:

【中文标题】Flutter iOS 和 Android 中的 FCM 自定义声音【英文标题】:FCM custom sound in flutter iOS and Android 【发布时间】:2020-04-10 15:56:31 【问题描述】:

目前我正在使用

firebase_messaging:^6.0.1

用于 FCM 通知。已收到通知,但没有任何声音androidios)。虽然我想要自定义声音并且知道 android 中的通知通道(如何在带有颤动的 android 中使用通知通道?)但目前即使从服务器拍摄通知也没有默认声音。

任何帮助将不胜感激。

【问题讨论】:

设备没有处于静音或振动模式,对吗?如果是通知托盘,则设置sound: true。您也可以使用flutter_ringtone_player 并在onMessage 收到推送时播放声音。 @RavinderKumar 但如果应用程序在后台或关闭,则它不会播放 【参考方案1】:

如果没有创建一个 fireBaseMessaging 实例,您已经拥有一个实例:

FirebaseMessaging _fireBaseMessaging = FirebaseMessaging();

并在下面用于 iOS:

if (Platform.isIOS) 
      _fireBaseMessaging.requestNotificationPermissions(const IosNotificationSettings(sound: true, badge: true, alert: true));
      _fireBaseMessaging.onIosSettingsRegistered.listen((IosNotificationSettings settings) 
        print("Settings registered: $settings");
      );

并确保您在 info.plist Reference 中添加了 FirebaseMessagingAutoInitEnabled = NO

【讨论】:

iOS 声音工作?我正在使用firebase_messaging: ^5.1.2 no for iOS 即使从控制台发送也没有声音,但在 android 中,从控制台发送默认声音有效,但不能从服务器发送 在我的设备中检查 this issue 是否正常工作。

以上是关于Flutter iOS 和 Android 中的 FCM 自定义声音的主要内容,如果未能解决你的问题,请参考以下文章

将 Android 和 iOS 库导入 Flutter 项目

VSCode 中的 Flutter beta 热重载适用于 Web,但不适用于 iOS 和 Android(适用于 Android Studio)

带有 Flutter 的 AppCenter(IOS 和 Android)

如何使用 Flutter 在 iOS 和 Android 上共享多张图片?

用于 android / iOS 开发的 FLUTTER 中的 HTML 解析

Flutter:未连接到 Android Studio 中的 IOS 模拟器