I wrote a flutter application and I can't configure the firebase cloud messaging with custom sound. I get notifications, but they come with the default sound while the app is in background. In the foreground, I use the local notification library and it works well, but I need to work in background too.
This is what I send for the cloud messaging:
{
"to":"<firebase_token>",
"notification":{
"sound":"arrive",
"title":"My Title",
"body":"My body"
},
"data":{
"click_action":"FLUTTER_NOTIFICATION_CLICK",
"status":"done",
"screen":"screenA",
"message":"ACTION"
},
"apns":{
"headers":{
"apns-priority":"5",
"apns-push-type":"background"
},
"payload":{
"aps":{
"content-available":1
}
}
}
}
This is my working local notification config:
void showNotification({
String title,
String body,
}) {
var androidPlatformChannelSpecifics = AndroidNotificationDetails(
'your channel id',
'your channel name',
'your channel description',
importance: Importance.Max,
priority: Priority.Max,
ticker: 'ticker',
playSound: true,
sound: RawResourceAndroidNotificationSound('arrive')
);
var iOSPlatformChannelSpecifics = IOSNotificationDetails();
var platformChannelSpecifics = NotificationDetails(
androidPlatformChannelSpecifics,
iOSPlatformChannelSpecifics,
);
notifications.show(0, title, body, platformChannelSpecifics,
payload: 'Custom_Sound',);
}
So the local notifications library see my custom sound, but cloud messaging will play the default sound. What could be the problem?
My sound is located at: android\app\src\main\res\raw\arrive.mp3
My imports are:
flutter_local_notifications: ^1.4.3
firebase_messaging: ^6.0.16
Flutter doctor:
[√] Flutter (Channel stable, v1.12.13+hotfix.9, on Microsoft Windows [Version 10.0.18362.836], locale hu-HU)
• Flutter version 1.12.13+hotfix.9 at C:\flutter src\flutter
• Framework revision f139b11009 (8 weeks ago), 2020-03-30 13:57:30 -0700
• Engine revision af51afceb8
• Dart version 2.7.2
[√] Android toolchain - develop for Android devices (Android SDK version 28.0.3)
• Android SDK at C:\Users\koros\AppData\Local\Android\sdk
• Android NDK location not configured (optional; useful for native profiling support)
• Platform android-29, build-tools 28.0.3
• Java binary at: C:\Program Files\Android\Android Studio\jre\bin\java
• Java version OpenJDK Runtime Environment (build 1.8.0_152-release-1343-b01)
• All Android licenses accepted.
[√] Android Studio (version 3.4)
• Android Studio at C:\Program Files\Android\Android Studio
• Flutter plugin version 35.3.1
• Dart plugin version 183.6270
• Java version OpenJDK Runtime Environment (build 1.8.0_152-release-1343-b01)
[√] VS Code (version 1.45.1)
• VS Code at C:\Users\koros\AppData\Local\Programs\Microsoft VS Code
• Flutter extension version 3.10.2
[√] Connected device (1 available)
• SM A520F • 52003aa8f4ea64d5 • android-arm64 • Android 8.0.0 (API 26) (emulator)
• No issues found!