Live Activity Does Not Appear on devices running iOS 17, built with Xcode 16

We are facing a serious issue affecting the Live Activity of the our app. If the app is built with Xcode 16 (16A242) the Live Activity does not appear on devices running iOS 17. The live activity does appear on devices running iOS 18 RC.

If we build the code with Xcode 15, the Live Activity appears on iOS 17 as expected.

To investigate this we also prepared a demo bare-bones project to make sure the Live Activity presence is not affected by part of the existing code. Again the issue appears even of the demo app.

Is this a known issue with Xcode16/iOS 18?

Funny I have the exact opposite problem with Live Activities running on iOS 17, but not on iOS18.

The best first course of action here would be to use Console.app to monitor to the relevant processes related to your app and extensions.

A good way to start would be with filtering by the BundleID of the target and / or the target name itself (the process name).

Also be sure to check the system processes for additional information. This will vary based on what and where you are looking but some examples:
To debug APNS you'll want to monitor apnd along with other relevant processes.
To debug WidgetKit, LiveActivities, Dynamic Island you'll want to monitor springboardd, liveactivitiesd along with other relevant processes.

If you don't see anything in the logs, you are likely facing a problem with Xcode 16 and iOS 17. The issue where the Live Activity feature is not present on iOS 17 devices but works on iOS 18 RC devices might be a bug in Xcode 16.

I would recommend reporting this issue to Apple Inc. so that they can investigate and provide a solution. You can file a bug report through the Xcode issue tracker or contact Apple Support for further assistance. In the meantime, you can consider using Xcode 15 to build your app, as it is compatible with iOS 17 and the Live Activity feature is working as expected. You can also explore other alternatives to minimize the impact on your users until the issue is resolved.

Rico

WWDR - DTS - Software Engineer

Thank you for the response.

We did follow the debugging instructions prior to contacting support. However when this yielded no results we created a demo project (which we sent you), to demonstrate the issue.

We emphasized that the logs didn't indicate any errors or issues.

Upon further investigation, it seems that this has to do with some environment variables:

We were using isActivityFullscreen:

@Environment(.isActivityFullscreen) private var isInStandby: Bool

which worked without issues on iOS 16, 17. However this caused the Live Activity to disappear on iOS 17.

Once we remove that line, the live Activity did appear on both iOS 17 and iOS 18.

However there is still an issue that we are not sure if this it's a bug or it's by design:

If the "FaceID" is enabled for the app, the Live Activity doesn't appear on the Lock Screen.

Is this a known issue or has Apple decided to hide Live Activities when FaceID is required to access an app on iOS 18?

Can you file a bug report with this information and reply here with the bug number? Please include your project (or a reproducing sample) and a sysdiagnose.

@Engineer

Hello,

I have app that count time.

The app's live activity (dynamic island and lock screen widget) shows elapsed time using https://developer.apple.com/documentation/swiftui/text.

Live Activity is not working in iOS 18 (release), but working fine in 17.5.

By comparing Console app logs I found "chronod" errors. Then I replaced "Text(timerInterval: ..." with static text and it start working.

So, something went wrong with chronod and widgets.

bug number: 15168114

Thank you

Thank you @brianTW for waking me up to double check ;)

TL; DR; live activity/widget are working

  1. Previous error related to chronod was disappeared from logs.

  2. But, the live activity/widget continued its bad behavior...

  3. The problem was in Text(timerInterval: context.attributes.start...Date(timeInterval:** .infinity**, since: context.attributes.start), countsDown: false, showsHours: true)

  4. I changed 3 to Text(timerInterval: context.attributes.start...Date(timeInterval:**100000**, since: context.attributes.start), countsDown: false, showsHours: true)

And, finally it works in iOS 18 too 🤷‍♂️

I didn't want to resort to any tricks here, I just intuitively used the infinite counter.

Anyway thanks all @Engineer

I am also facing this same issue where my Live Activity doesn't appear in iOS 17.6.1 and 17.7.1 when I build the app with Xcode 16.0 (16A242d) if @Environment(.isActivityFullscreen) is used.

Using Xcode 16.1 (16B40) doesn't fix the problem either. Did not try 16.2 beta

Live Activity Does Not Appear on devices running iOS 17, built with Xcode 16
 
 
Q