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, 2021 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 Jan 12, 2021 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, 2021 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, 2021 at 17:24
  • 1
    got it, yes, that was the culprit. needed to add the handler within the FirebaseMessagingService onMessageReceived. Thank you! Jan 13, 2021 at 19:39

1 Answer 1

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!

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .