Live Activities: FAQ

Find out answers to your questions around Live Activities

How do my users get a Live Activity?

  • Users must be in the application and must click on a button prompting them to start a Live Activity. This could be a button in your UX that appears for an event or a modal such as an in-app message.

  • If your targeted users are not currently engaged with your application, you can re-engage them by sending a push notification, or another form of communication such as email or SMS, to get them back into the application.

  • If your targeted users are now using the application, you can send an in-app as a way to initiate a Live Activity opt-in. In-Apps provide a low-code way to prompt users for action, without having to create dynamically changing UX.

Is there a way for OneSignal to deep link LA to a specific destination (e.g., the game) or is this something that needs to be instrumented from the app?

Do I have access to use Live Activities in my plan?

Live Activities are available on all plans except for Free plans with more than 10,000 opted-in subscribers. If you have more than 10,000 opted-in subscribers on a Free Plan, you can upgrade to use Live Activities. Feel free to reach out to Support if you require any more guidance or help with pricing.

What do the failures mean?

There are 2 types of failures - unsubscribed and errors. Learn more about failed notifications.

Can Live Activities deep link to a specific destination?

Yes they can deep link to a specific destination, but this will change the Live Activity initialization within the app. This means the deep link cannot change by Live Activity update.

What devices work with iOS 16?

Apple keeps an updated compatibility guide with all devices that work with iOS 16.

How do I ensure users who are on a Live Activity do not get Push Messages?

Your application may already send a series of Push Notifications, where your designed Live Activity replaces these Push Notifications. For example, if you send score updates via Push, you could replace this through a Live Activity.

In order to ensure your users are not getting too many messages, we recommend as your user opts in for a Live Activity, to add a data tag. By adding this data tag, you can exclude users with this data tag from push messages that may contain the same or similar content. Read more on Data Tags and Segments.

The API returned a 400 with an error message stating I'm over the subscriber limit. What do I do?

If your push subscriber count is greater than the Push Subscribers for your plan, please upgrade your account to the next plan, or reach out to our Support team . For the latest plan details, please see here.

Is it possible to also read the Live Activity data from the payload on the main target?

Yes. It is possible to do so. This can be used for debugging or to update the app's UI every time a Live Activity update happens.

Task {
    for await content in activity.contentUpdates {
        print("LA activity id: \(activity.id), content update: \(content.state)")
    }
}
// Example output:
// LA activity id: EFE6D54D-F7E1-45EF-9514-4C2598F8DED2, content update: ContentState(message: "My message from payload")

Getting lifecycle changes:

Task {
    for await state in activity.activityStateUpdates {
        print("LA state update: \(state)")
    }
}

// Example output 1 - LA ended, but still visible
// LA state update: ended
// Example output 2 - LA dismissed
// LA state update: dismissed

What is the budget for high-priority updates?

There is no explicit budget as the system dynamically determines this as a function of mulitple variables such as battery and device state.

If budget is a concern, we strongly recommend considering enabling the NSSupportsLiveActivitiesFrequentUpdates capability. A user will only be presented with a dialog when the Live Activity exceeds its push budget, and if they allow the Live Activity to continue, the budget will automatically be increased for a seamless user experience.

Any more questions? Chat with us.

If you have any more questions or feedback on our implementation of Live Activities and what you'd like to see next, please reach out to our Support Team