Skip to content

Latest commit

 

History

History
165 lines (104 loc) · 9.59 KB

push_notification_troubleshooting.md

File metadata and controls

165 lines (104 loc) · 9.59 KB

Campaign Push Notifications

To set up server key/APNS server certificate in the Campaign instance, complete the following steps:

{% tabs %} {% tab title="Android" %}

Set up a server key

  1. To configure the app in Google Firebase, see Firebase Console and sign in using your Google Developer credentials.

  2. Add a project and add your app under that project using the application ID that you used in the app.

    For more information, see Add Firebase to your Android project.

  3. Add the generated “google-service.json” to the project and set up the project and module level gradle files.

    For more information, see Add Firebase to your Android project.

  4. Verify that Firebase server key is configured in the Campaign instance by clicking Adobe Campaign > Administrator > Channels > Mobile App (AEP SDK).

  5. Select the mobile app from the list and verify that the push channel settings status for Android is Android key set up success.

    Server key configuration in Android {% endtab %}

{% tab title="iOS" %}

Set up the APNS server certificate

  1. Add Push Notification entitlement to your app.

    For more information, see Enable the Push Notifications Capability.

  2. To configure the APNS certificate, register the app on your Apple developer account and generate the certificate.

    For more information, see Establishing a Certificate-Based Connection to APNs.

  3. Verify that the APNS server certificate is configured in the Campaign instance by clicking Adobe Campaign > Administrator > Channels > Mobile App (AEP SDK).

  4. Select the mobile app from the list and verify that push channel settings status for iOS is iOS certificate with filename *.pem is successfully uploaded.

  5. Verify that you are using production certificate for production environment and development certificate for development environment. Configured push certificate in Campaign {% endtab %} {% endtabs %}

For more information about configuration, see Channel specific application configuration in Adobe Campaign.

Set up an Android or iOS app to receive push notifications

{% tabs %} {% tab title="Android" %}

Set up the Android app

  1. Create the Firebase Messaging Service and add it to the Android Manifest file.

    For more information, see Set up a Firebase Cloud Messaging client app on Android.

  2. Generate a push token for the app using FireBase Instance ID class.

  3. In the onComplete function of OnCompleteListener, set the Push identifier by calling the API MobileCore.setPushIdentifier.

    For more information, see setPushIdentifier.

Verify that the push token has successfully synced with the Experience Cloud ID service

{% hint style="warning" %} If SDK privacy status is optedout, the push identifier will not be set. {% endhint %}

  1. Verify the push token sync with the Experience Cloud ID service (ECID).

  2. To verify, launch your app connected to an Adobe Experience Platform Assurance session.

  3. In the list of events, verify that you have an event with type SetPushIdentifier.

  4. In the details panel on the right, verify the value of the push token for this device. The value in pushIdentifier is the same value that is sent to the ECID service. Verify SetPushIdentifier event

  5. To verify that app’s push token is mapped to the correct Experience cloud ID(ECID) in the Campaign instance, click Adobe Campaign > Administrator > Channels > Mobile App (AEP SDK).

  6. Select your app, under the mobile application subscribers verify that the Experience Cloud ID and the Registration token for the user is displayed. App subscriber list, verify mid and push token

  7. If you are using Charles, verify that the push token has successfully synced with the ECID service.

  8. Check for the demdex request, which is marked with the red line in the screenshot below.

  9. Verify the successful response(200) for this network call.

    ECID network request for push token sync {% endtab %}

{% tab title="iOS" %}

Set up the iOS app

  1. After you launch the app, call registerForRemoteNotifications to register the app and receive the APNS token.

    This API generates and returns the APNS token through the application:didRegisterForRemoteNotificationsWithDeviceToken: delegate function.

    For more information, see Registering Your App with APNs

  2. In application:didRegisterForRemoteNotificationsWithDeviceToken:, call setPushIdentifier to set the Push identifier.

    For more information, see setPushIdentifier.

Verify that the push token has successfully synced with the Experience Cloud ID service

{% hint style="warning" %} If SDK privacy status is optedout, the push identifier will not be set. {% endhint %}

  1. Verify the push token sync with the Experience Cloud ID service (ECID).

  2. To verify, launch your app connected to an Adobe Experience Platform Assurance session.

  3. In the list of events, verify that you have an event with type SetPushIdentifier.

  4. In the details panel on the right, verify the value of the push token for this device.

    The value in pushIdentifier is the same value that is sent to the ECID service. Verify SetPushIdentifier event

  5. To verify that app’s push token is mapped to the correct Experience cloud ID(ECID) in the Campaign instance, click Adobe Campaign > Administrator > Channels > Mobile App (AEP SDK).

  6. Select your app, under the mobile application subscribers verify that the Experience Cloud ID and the Registration token for the user is displayed. App subscriber list, verify mid and Registration token

  7. If you are using Charles, verify that the push token has successfully synced with the ECID service.

  8. Check for the demdex request, which is marked with the red line in the screenshot below.

  9. Verify the successful response(200) for this network call.

    ECID network request for push token sync {% endtab %} {% endtabs %}

Troubleshooting push notification events tracking

The following events are related to the tracked push notifications:

  • Impression (Notification is delivered.)

  • Click (User clicked the notification.)

  • Open (App opened in response to user's click on notification.)

    For more information about implementing the tracking of push notification events, see Push Tracking.

Troubleshooting using Adobe Experience Platform Assurance

You can verify the push notification tracking in Assurance.

  1. Connect your app to an Assurance session.

  2. Send a push notification to app from your Campaign instance.

    To know more about how to send push notification, see Preparing and sending a push notification.

  3. Receive a push notification in the device.

  4. Click on the push notification to launch the app.

  5. In the list of events, verify that you have an event with type CollectData.

  6. In the Details panel on the right, verify the value of the action.
    The value of the action should be 7 for impression, 2 for the click, and 1 for open.

    Impression event tracking (action value 7)

    Shows Push notification impression tracking

Click event tracking (action value 2)

Shows Push notification click tracking

Open event tracking (action value 1)

Shows Push notification open tracking

Troubleshooting using Charles

To verify that a successful network call is made to track the push notification interaction event, look for the GET request with the query string id=broadlogID,deliveryID,action to the Campaign server, see screenshots below for more details about what to look.

Impression event tracking(action value 7)

Impression event tracking for notification

Click event tracking(action value 2)

Click event tracking for notification

Open event tracking(action value 1)

Open event tracking for notification