Learn how to configure the Marketing Cloud to send push notifications to AEM Mobile apps.


  • Adobe AEM Mobile account
  • Adobe Analytics account (not Analytics Essentials)
  • Adobe Mobile Marketing access (requires additional purchase through Digital Marketing Cloud)
  • Android certificate for signing apps
  • iOS certificates for signing apps and sending push notifications


Push messages are sent to mobile app users who have opted in to receive notifications. Push messages are useful for re-engaging passive users or conveying time-specific and location-specific information. Push messages appear outside of your app.

When you create an AEM Mobile app through On-Demand Services, you have two options for sending push notifications. You can use either the On-Demand Services Notifications feature or the Marketing Cloud. Using the On-Demand Services portal supports background push notifications (iOS) as well as text notifications (iOS and Android). For details, see Send push notifications for AEM Mobile apps.

Using the Marketing Cloud allows you to send push notifications to iOS and Android app users. Sending push notifications using the Marketing Cloud is available only if you have an Adobe Analytics account and access to the Adobe Mobile Marketing, available through a Digital Marketing Cloud purchase. Push messages sent through Marketing Cloud use Google Cloud Messaging (GCM) for Android apps and Apple Push Notification Service (APNS) for iOS apps. You can target push messages to users by specifying Analytics segments or custom segments.

Using Marketing Cloud to send a push message

Overview of setting up Marketing Cloud push notifications

You must perform several tasks before you can configure Push Messaging in applications. The steps are slightly different for iOS and Android.

Android setup workflow

  1. Obtain the Google server API key and google-services.json file.
  2. Configure the app for push services in Mobile Marketing dashboard (https://mobilemarketing.adobe.com)
  3. Build or edit the Android app in On-Demand Services and download the .apk.
  4. Use a script to enable Android push notification in the unsigned .apk file.
  5. Sign the .apk file and load it on devices for testing.
  6. Send a push notification from Mobile Marketing dashboard.

iOS setup workflow

For iOS push notifications, you can use either On-Demand Services or Marketing Cloud to send push notifications, or both.

  1. Set up the app for push services in Mobile Marketing dashboard (https://mobilemarketing.adobe.com). This step requires you to upload your push notification certificate.
  2. Build or edit the iOS app in On-Demand Services. Download the .ipa file, sign it, and load it on devices.
  3. Send a push notification from Mobile Marketing dashboard.

Obtaining the Google server API key and json file (Android only)

In order to send notifications to your AEM Mobile app through Google Cloud Messaging, you need to use the Google Developer Console to configure the app. You will obtain a Server API key and download a .json file. This information ties together the AEM Mobile app, the Marketing Cloud push services, and Google Cloud Messaging.

  1. Go to the Google Developers Console (https://developers.google.com/mobile/add?platform=android) and sign in using your Google Developer credentials.

  2. Create a new app or choose an existing app.

  3. Specify the Android Package Name. Use the same package name that you use for Bundle ID (usually in com.company.appname format) when building the Android app in On-Demand Services.

  4. Click Choose and Configure Services.

  5. Select Cloud Messaging, and then click Enable Google Cloud Messaging.

  6. Click “Generate configuration files.”

  7. Copy the Server API Key. Store this information in a safe place. You’ll need this information when you configure the app in Mobile Marketing.

  8. Click “Download google-services.json” and store the file in a safe place. You’ll add this .json file to the Android app .apk file.

Configuring the app in Mobile Marketing

When you configure the app in Mobile Marketing, you establish a connection between Mobile Marketing Push Services and either Google Cloud Messaging or Apple Push Notifications Services, or both.

To enable the Push Services feature, you must log in to the Mobile Core Service using an Adobe ID that is linked to your Adobe Analytics account. The Push Services option is not available if you log in using your existing Adobe Analytics account. (When you sign in using an Analytics account, you are prompted for Company Name, User Name, and Password. When you sign in using an Adobe ID, you are prompted for Adobe ID and Password).

  1. Go to the Mobile Marketing dashboard: https://mobilemarketing.adobe.com

  2. Sign in using an Adobe ID.

    Use an Adobe ID, not the Analytics account information that includes the Company Name.

    If necessary, sign in using an Adobe ID that is not associated with an Analytics account, and link it to the Analytics account. You do so by signing in and clicking an active service such as Analytics. For details, see the "Account Linking" section in the Organizations and Account Settings article.

    If necessary, link your Adobe ID to your Analytics account so that you can enable Push Services.

  3. Click Manage Apps in the left rail.

  4. Create a new app or choose an app.

  5. Click the app to manage app settings.

  6. Scroll down. Under Visitor ID Service, click Enable, and specify the organization. Click Save.

    (This option is not available if you sign in using an Analytics account instead of an Adobe ID.)


  7. Under Push Services, do the following:

    Google: Click Google. Copy the Server API Key value obtained in the previous set of steps and paste it into the API Key field. (Make sure that you get this API Key value from the Google console, not from the google-services.json file.) Click Save.

    Apple: Click Apple. Drag and drop your private key and/or certificate. If your private key is password-encrypted, specify its password. If the .p12 does not include the certificate, drag and drop the certificate file (.cer) as well.

    • In the Apple iOS Developer portal, make sure that your App ID is configured to enable push notifications.
    • We recommend that you use production push certificates instead of development push certificates. To test production push notifications before submitting your app, you can use an Ad Hoc provisioning profile so that you can install the distribution app on a limited number of devices.
    • For information about creating iOS certificates, see iOS Publishing Guide for AEM Mobile.

    Click Save.


  8. After you configure the app in Mobile Marketing, rebuild or create your app in On-Demand Services, as described next.


    Before rebuilding or creating your app, wait at least one hour after creating the project to allow for the report data to propagate between AEM Mobile and Marketing Cloud.

For additional information, see the Marketing Cloud article Prerequisites to Enabling Push Messaging.

Building the app using On-Demand Services

Rebuilding the app is required after configuring Mobile Marketing for Push Services.


  1. Sign in to the On-Demand Portal (https://aemmobile.adobe.com) using an Adobe ID that has app building permissions for the project.

  2. Click Apps in the left rail. Create or edit the app. Make sure that the Bundle ID matches the information you specified when building your app for iOS or creating your .json file for Android.

  3. (Android only) Select Enable Push Notifications, click Upload, and then specify the JSON file that you downloaded using the Google Developers Console.

  4. Download the unsigned app.

  5. Use the AEM Mobile Signing Tool to sign the app. Add the app to devices or submit it for distribution.

Sending push messages from Mobile Marketing Dashboard

Now that you have configured Mobile Services and your app for push notifications, you can use the Mobile Marketing Dashboard to send messages to users.

After an app is launched, it takes approximately one hour for the app to register with the push services.

For details, see Create a push message.

  1. Select your app, and click Messaging > Manage Messages > Create Message.

  2. Click Create Push.

  3. Under Audience tab, select your intended audience. It should tell you approximately how many devices it would reach. Click Next.

    For example, if you want to send the message to all app users who have allowed notifications, you can specify Launches ≥ 0.

  4. Enter Name and Message Content. Click Next.

    To create a deep link that users can tap to open a specific article or collection, click Show Advanced Options, and specify the following information in the Payload text field. At this time, deep linking works only on iOS devices.

    Deep link format:


    If you just want to deep link to a collection instead of an article, omit the article strings. Do not include the angle brackets (< >) in <collectionName> and <articleName>.

    Deep link example:

    Tapping the deep-link push message opens to the specified article.

  5. Specify when you will send the message.

  6. When you are done, click Save & Send. Check your device to verify you get the push notification.


After you send the push notification, check the notification details to make sure that the number of target devices is greater than zero. If the number sent is 0, then you likely have the incorrect Google Cloud Marketing API key. Make sure that you get the API key from the Google console, not from the the google-services.json file, as described previously.

Sending background notifications

You can use Mobile Services to send a background push notification. At this time, background notifications are supported only in iOS apps. The steps for sending a background push notification is similar to the process for sending a push message. For a background notification, you need to specify Payload information that you construct from your project ID and other information.


  1. Following the previous set of steps to send a push message.
  2. In the Experience section, click Show Advanced Options, and then specify the appropriate information in the Payload field.

Background download format:


Background download example:


To obtain the project ID for your app, go to the On-Demand Services Portal, select Content & Layouts, and select the string of characters near the end of the URL.

Specify the name of the collection (Collection Name, not Collection Title) that will be downloaded in the background.