You can use Campaign to send push notifications on Android devices. To perform this, Campaign relies on specific subscription services. Some important changes to the Android Firebase Cloud Messaging (FCM) service will be released in 2024, and may impact your Adobe Campaign implementation. Your subscription services configuration for Android push messages may need to be updated to support this change.
As part of Google’s continual effort to improve its services, the legacy FCM APIs will be discontinued on June 20, 2024. Learn more about Firebase Cloud Messaging HTTP protocol in Google Firebase documentation.
Adobe Campaign Classic v7 and Adobe Campaign v8 already support the latest APIs to send push notification messages. However, some old implementations still rely on the legacy APIs. These implementations must be updated.
If your current implementation supports subscription services connecting to FCM using the legacy APIs, you are impacted. Migration to the latest APIs is mandatory to avoid any service distruption. In that case, Adobe teams will reach out to you.
To check if you are impacted, you can filter your Services and Subscriptions as per the filter below:
If any of your active push notification service uses the HTTP (legacy) API, your setup will be directly impacted by this change. You must review your current configurations and migrate to the newer APIs as described below.
If your setup exclusively uses the HTTP v1 API for Android push notifications, then you are already in compliance and no further action will be required on your part.
For Campaign Classic v7, the support of HTTP v1 has been added in 20.3.1 release. If your environment is running on an older version, a prerequisite for the migration to HTTP v1 is to upgrade your environment to the latest Campaign Classic build. For Campaign v8, HTTP v1 is supported by all releases, and no upgrade is needed.
The Android Firebase Admin SDK service’s account JSON file is needed to have the mobile application moved to HTTP v1. Learn how to get this file in Google Firebase documentation.
For Hybrid, Hosted and Managed Services deployments, in addition to the migration procedure below, contact Adobe to update your Real-Time (RT) execution server. The Mid-Sourcing server is not impacted.
As a Campaign Classic v7 on-premise user, you must upgrade both the Marketing and Real-Time execution servers. The Mid-Sourcing server is not impacted.
To migrate your environment to HTTP v1, follow these steps:
Browse to your list of Services and Subscriptions.
List all mobile applications using the HTTP (legacy) API version.
For each of these mobile applications, set the API version to HTTP v1.
Click the Load project json file to extract project details… link to load directly your JSON key file.
You can also enter manually the following details:
Click Test the connection to check that your configuration is correct and that the marketing server has access to the FCM. Note that for Mid-Sourcing deployments, the Test connection button cannot check if the server has access to the Android Firebase Cloud Messaging (FCM) service.
As an option, you can enrich a push message content with some Application variables if needed. These are fully customizable and a part of the message payload sent to the mobile device.
Click Finish then Save.
Below are the FCM payload names to further personalize your push notification. These options are detailed here.
|Configurable message element (FCM payload name)
|Configurable options (FCM payload name)
|title, body, android_channel_id, icon, sound, tag, color, click_action, image, ticker, sticky, visibility, notification_priority, notification_count
Once these changes are applied in all your server, all new Push notification deliveries to Android devices use the HTTP v1 API. Existing push deliveries in retry, in progress, and in use, still use the HTTP (legacy) API.
There are no specific changes required to the Android Mobile applications’ code and the notification behavior should not change.
However, with HTTP v1, you can further personalize your push notification with HTTPV1 additional options.
For more on the HTTP v1 additional options and how to fill these fields, refer to FCM documentation.