Skip to main content
Adrià García
← Back to the simulators

Mobile SDK · Journey Optimizer

Laura installs the app

Laura installs the shop's app, accepts notifications, logs in and comes back in the evening. Marketing wants a welcome in-app message, an in-app campaign published at midday and an abandoned basket push. Whether they work depends on SDK calls that are implemented once and never looked at again.

Scenario

Lifecycle implemented

lifecycleStart and lifecyclePause in the app.

setPushIdentifier is called

With the token provided by the operating system.

Push profile dataset in the datastream

Where the token is stored in the profile.

updateIdentities with CRMID on login

Links the app ECID to the customer.

Re-evaluate the in-app message before showing it

An option in the campaign trigger.

Laura accepts notifications

Operating system permission.

Illustrative scenario ↑ Back to the controls
Example assumptions

Example day, times and campaigns.

Laura's day

What Laura does and what the SDK calls

Each step with its SDK calls and, next to it, what marketing expects to happen at that moment.

What marketing expects

What works and what does not

Six things marketing takes for granted, and the call or data each one depends on.

The recommendation

An SDK checklist before the first mobile journey

Almost everything that fails in push and in-app is not in AJO. It is in an SDK call that is not made or a dataset that was not configured.

  1. 01

    Lifecycle in place

    lifecycleStart when moving to the foreground and lifecyclePause when moving to the background. Without them there are no sessions or app open and close events, and in-app messages that rely on them do not fire.

  2. 02

    Push token and dataset

    setPushIdentifier with the token, and the push profile dataset in the datastream. Call it again after resetIdentities.

  3. 03

    Identity after login

    updateIdentities with the CRMID. That way the app profile joins the customer profile and CRM audiences reach the mobile app.

  4. 04

    In-app messages that do not wait for the next launch

    Enable re-evaluation in the triggers of urgent campaigns, or refresh messages at key moments. Otherwise, what is published today is seen by whoever opens the app tomorrow.

Architecture note · 05 Reuse the data foundation across channels Add channels by reusing customer and decision foundations, not rebuilding them. Read the note →