App Messages

A quick start guide to adding App Message support to your iOS application with the Pushly PushSDK

App Messages, unlike Push Notifications and Live Activities, allow you to interact with and engage your user base without the need for a subscription token. App Message can be configured to automatically display based on a number of criteria including custom conditions that can be provided programmatically.

For App Messages with custom conditions the PushSDK provides convenience methods for you to signal when these conditions have been met as well as the ability to listen to certain lifecycle events.


Before you can integrate App Messages with the SDK the following requirements must be met:

  • An iOS app

  • A device or emulator with iOS 11.0 or newer installed

  • PushSDK release supporting App Messages (See version support chart below)

Step 1: iOS SDK Setup

For applications not already using the PushSDK please see our Native App Push setup guide for Apple / iOS.

For applications already using the PushSDK you might need to upgrade to a later version that includes App Message support. Use the following table to determine if you need to upgrade your installation.

SDKEarliest Version with App Messages




Within the Xcode project navigator panel locate Package Dependencies. Locate and right-click on Pushly and select Update Package.

If after an update the package is not >= version 1.3.0 select your Project in the project navigator, select your project, and then navigate to Package Dependencies. Select Pushly and ensure the Dependency Rule is set to Up to Next Major Version with 1.3.0, or greater, as the target.

Step 2: Create and Schedule an App Message

Use the Pushly Platform to build and schedule your first App Message.

Step 3: (Optional) Trigger Your App Message's Custom Condition

When using custom conditions the PushSDK is used to provide these conditions programmatically which then triggers an evaluation of which App Messages are currently active and match the provided conditions.

In most cases a single condition is triggered and evaluated at a time. For these situations you would use the trigger(condition: String, withValue: String) method signature.

PushSDK.AppMessages.trigger(condition: "enabled_subscription", withValue: "true")

However, there might be situations where it is more convenient to trigger multiple conditions at once for evaluation. In these cases you can pass a dictionary containing any number of conditions to the trigger(conditions: [String : String]) method signature.

PushSDK.AppMessages.trigger(conditions: [
    "enabled_subscription": "true",
    "subscriber_tier": "premium"

Step 4: (Optional) Listen to App Message Lifecycle Events

See our SDK Delegates documentation for information on handling lifecycle events of your App Messages.

Last updated