Skip to main content

Push, in-app & deep links

Beyond track / identify / reset, the JourneyLayer mobile SDKs (v1.1 on both Android and iOS) add three on-device capabilities:

  1. Push notifications — Android via FCM, iOS via APNs.
  2. In-app messages — pull-based; the SDK fetches eligible messages from the server and displays them.
  3. Install attribution + deep links — attribute installs and route users to the right screen when they open a push.

Each capability has two sides: a little wiring the app developer does in the SDK, and configuration the marketer does in the dashboard.

Where the exact API lives

This page describes what each capability does and what you have to wire, at a practical level. For the exact method names, parameter names, and callbacks, read the SDK source on GitHub: Android and iOS. We keep the in-repo READMEs authoritative so you never copy a stale signature.


1. Push notifications

What it does

JourneyLayer delivers push notifications to a user's devices. The server sends through FCM HTTP v1 for Android and APNs for iOS, using the credentials you configure in the dashboard.

What the app developer wires

  1. Set up the platform messaging service in your app — Firebase Cloud Messaging on Android, the Apple Push Notification service capability on iOS — the same way you would for any push integration.
  2. Obtain the device push token from FCM (Android) or APNs (iOS).
  3. Register that token with JourneyLayer so it becomes part of the user's profile. Once registered, the server can target that device. Refresh the registration whenever the platform rotates the token.

See the Android and iOS READMEs for the exact token-registration method.

What the marketer configures

  • Channel credentials in Settings -> Channels (Mobile Push): upload your FCM service-account JSON (Android) and your APNs key (iOS). The server uses these to authenticate with FCM / APNs. See Channels.
  • The push itself is composed and sent from Campaigns (one-off / scheduled sends) or Journeys (automated, behavior-triggered sends).
No tokens in your push payloads

Configure FCM/APNs credentials in the dashboard, not in your app. Your app only ever holds the publishable token used to initialize the SDK.


2. In-app messages

What it does

In-app messages are shown inside your app while the user is active — banners, modals, and similar. Delivery is pull-based: the SDK fetches the in-app messages this user is eligible for from the server, then displays them. Messages can be broadcast project-wide or targeted per user based on profile and behavior.

What the app developer wires

  1. Let the SDK fetch eligible in-app messages. Initialize the SDK as usual; the in-app subsystem pulls eligible messages for the current user.
  2. Let the SDK display them, and make sure your event tracking is in place — targeting and eligibility are driven by the events and traits you send via track / identify.

The exact fetch/display hooks (including any manual trigger or display callback) are documented in the Android and iOS READMEs.

What the marketer configures

  • Design and target in-app messages from Campaigns and Journeys. Choose broadcast (everyone) or a targeted segment.

What it does

  • Install attribution records how a user arrived, so you can connect installs back to the source.
  • Deep links route a user to a specific screen — for example, when they tap a push notification, the app opens the relevant product or content instead of the home screen.

What the app developer wires

  1. Handle deep links from pushes. When a notification carries a deep link, parse it and navigate to the target screen. Push payloads can include a deep link destination that your app reads on open/tap.
  2. Let the SDK record attribution on install/open so the source is captured on the user's profile.

The exact attribution and deep-link entry points are defined in the Android and iOS READMEs.

What the marketer configures

  • Attach deep links to push and in-app content when building messages in Campaigns and Journeys, so a tap lands the user on the right screen.

Setup checklist

  • SDK initialized with project ID + publishable token + endpoint (Android / iOS).
  • FCM / APNs set up in the app; device token obtained and registered with JourneyLayer.
  • FCM service-account JSON and APNs key configured in Settings -> Channels.
  • In-app fetch/display wired so the SDK can show eligible messages.
  • Deep links from pushes handled and routed in the app.