I’m developing a smart alarm app that makes use of the extended runtime session. I’ve looked at the docs, and one of the background modes for Apple watch is smart alarm.
The docs also say that an extended runtime session can only be scheduled one at a time, and while the app is open, which isn’t very intuitive for an alarm app that runs on schedules.
I’ve seen other apps do something similar, but I’m trying to make this fully automated, without the user having to do too much manually to reschedule the smart alarm.
Is there no way to do this? I would’ve thought the smart alarm background modes would allow to schedule more than 1/a repeating extended runtime session.
It is as-designed that a watchOS app can only start a new extended runtime session (WKExtendedRuntimeSession
) when it runs in the foreground and is active
, and that it can only schedule one session at a time. (Note that a frontmost
app can run in the foreground, but is not active.) For anything beyond that, I’d suggest that you file a feedback report with your use case.
Specific to smart alarms, we introduced AlarmKit in WWDC25, which is available in iOS 26 but can forward the alarm presentation to a paired watch when an alarm occurs. You might take a look if that fits your use case.
Best,
——
Ziqiao Chen
Worldwide Developer Relations.