In-App Messaging Overview

Airship provides multiple ways to render in-app content. Minimal integration is required.

In the SDK, the In-App Automation framework powers:

Within this document, “in-app message” refers to all of the above except where otherwise specified.

The SDK uses several subcomponents to control different aspects of in-app messaging:

Display

Pausing will still allow messages to be triggered and queued up for execution, but they will not display. This is useful for preventing in-app message displays on screens where it would be detrimental to the user experience, such as splash screens, settings screens, or landing pages.

Pausing display

InAppAutomation.shared().isPaused = true
InAppAutomation.shared().setPaused(true);
InAppAutomation.shared.isPaused = true
// Not supported
await Airship.inApp.setPaused(true)
Airship.inApp.setPaused(true);
Airship.inApp.setPaused(true);
await Airship.inApp.setPaused(true);
using AirshipDotNet;

Airship.Instance.InAppAutomationPaused = true;
using UrbanAirship.NETStandard;

Airship.Instance.InAppAutomationPaused = true;
Airship.inAppAutomation.isPaused = true
UAirship.Shared.InAppAutomationPaused = true;

The display interval controls the amount of time to wait before the manager is able to display the next triggered in-app message. The default value is set to 0 seconds but can be adjusted to any amount of time in seconds.

Display interval

InAppMessageManager.shared().inAppMessageManager.setDisplayInterval(30, TimeUnit.SECONDS)
InAppAutomation.shared().getInAppMessageManager().setDisplayInterval(30, TimeUnit.SECONDS);
InAppAutomation.shared.inAppMessaging.displayInterval = 30
// Not supported
// Milliseconds
await Airship.inApp.setDisplayInterval(30000);
Airship.inApp.setDisplayInterval(30000);
Airship.inApp.setDisplayInterval(30000);
await Airship.inApp.setDisplayInterval(30000)
using AirshipDotNet;

Airship.Instance.InAppAutomationDisplayInterval = TimeSpan.FromMilliseconds(30000);
using UrbanAirship.NETStandard;

Airship.Instance.InAppAutomationDisplayInterval = TimeSpan.FromMilliseconds(30000);
Airship.inAppAutomation.displayIntervalMilliseconds = 30000
UAirship.Shared.InAppAutomationDisplayInterval = TimeSpan.FromSeconds(30);

Customization

Various options are available for customizing the container view for in-app message content via the native SDKs. This applies to:

  • In-App Automation
  • In-App Messages (legacy) — Content is displayed within an In-App Automation banner
  • Landing Pages

Scenes and Surveys are fully customizable in the dashboard and cannot be customized via the SDK.