Just wanted to clarify some expected behaviors here. It seems that there are two distinct behaviors for Live Activity flows for freshly installed apps.
When you start a Live Activity for the first time and the user hasn't yet clicked on Allow/Don't Allow in the activity interface, there are two different sequences:
Starting a Live Activity locally
- Request a Live Activity locally via Swift
- Live Activity starts
.pushTokenUpdates
is immediately triggered, even if the Allow/Don't Allow buttons appear under the Activity UI
Starting a Live Activity via push-to-start
- Send a push-to-start notification to launch a Live Activity
- Live Activity starts
.pushTokenUpdates
is not triggered, and.pushToken
returns nil.- If a user clicks on
Allow
in the Activity UI, only then is.pushTokenUpdates
triggered.