0

I'm working on integrating MarketingCloudSDK on Android. It looks like everything is connecting properly and I see the devices registered. When sending push notifications, it said the message was delivered, but I never got the notification on the device.

Looking at the troubleshooting guides here: https://salesforce-marketingcloud.github.io/MarketingCloudSDK-Android/trouble-shooting/trouble-shooting-push-setup.html

Says that the payload is:

{ "data": { "title": "Test Push", "alert": "It Worked!" }}

I looked at Firebase documentation and it says that for the notification, the payload should be using "notification" as the key such as

{ "notification": { "title": "Test Push", "alert": "It Worked!" }}

When I changed from "data" to "notification" from the troubleshooting step, I was able to get the notification.

Any advice?

Thanks!

8
  • You have not followed the documentation on the page you linked. – Bill Mote Jan 12 at 13:24
  • what do you mean? I'm not posting the whole thing because when changing from "data" to "notification", I'm getting the notification – ordinaryman09 Jan 12 at 16:52
  • The directions on the page you linked work as documented. Is your application configured with more than 1 push provider? (Marketing Cloud and Firebase, or ... ???). We have more than 2 billion installations working without incident. If the directions on the page you linked do not work then you have configured something incorrectly. I suspect when you change data to notification then the Firebase service is handling the message and not the MC SDK. – Bill Mote Jan 13 at 13:19
  • 1
    Yes and no. Please ensure you've followed the documentation with regards to Multiple Push Providers: salesforce-marketingcloud.github.io/MarketingCloudSDK-Android/… – Bill Mote Jan 13 at 17:24
  • 1
    got it, yes, that was the culprit. needed to add the handler within the FirebaseMessagingService onMessageReceived. Thank you! – ordinaryman09 Jan 13 at 19:39
1

The issue was I implemented the notification handler, FirebaseMessagingService. So I had to implement the MarketingCloud handler within onMessageReceived

if(PushMessageManager.isMarketingCloudPush(remoteMessage)) {
        MarketingCloudSdk.requestSdk( sdk -> {
            sdk.getPushMessageManager().handleMessage(remoteMessage);
        });
    }

as described here: https://salesforce-marketingcloud.github.io/MarketingCloudSDK-Android/trouble-shooting/multiple-push-sdks.html

Thanks Bill Mote for pointing this out!

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.