iOS 18 @AssistantIntent's marked with @available crashing on older OS's

Is anyone else seeing their apps crash on iOS/macOS 17.4/14.4 and newer when building a project that simply just includes the iOS 18 @AssistantIntent Macro?

The beta 4 releases still have this problem. There are no notes about this that I have seen in the beta release notes. Crash message shown in console when trying to run on 17.4, 17.5, 17.5.1, etc:

dyld[21935]: Symbol not found: _$s10AppIntents15AssistantSchemaV06IntentD0VAC0E0AAWP Referenced from: <F7A1FEF0-F3B0-379C-A914-D1FB0BA7C693> /Users/jonathan/Library/Developer/CoreSimulator/Devices/CA308F47-BCA8-4429-8599-1BB1CCEAB5B6/data/Containers/Bundle/Application/D7DC8E16-90DB-406A-A521-20F18326E4A7/IntentDemo.app/IntentDemo.debug.dylib Expected in: <88E18E38-24EC-364E-94A1-E7922AD247AF> /Library/Developer/CoreSimulator/Volumes/iOS_21F79/Library/Developer/CoreSimulator/Profiles/Runtimes/iOS 17.5.simruntime/Contents/Resources/RuntimeRoot/System/Library/Frameworks/AppIntents.framework/AppIntents

Obviously, the new Apple Intelligence AssistantIntents only work on the 2024 OS releases. However, even when these new App Intents are marked with @available(iOS 18, macOS 15, *), the app crashes on any earlier OS version. But it runs just fine on iOS 18 and macOS 15...

I would love for me to just have done something wrong but I don’t think I have… Here is the sample project: https://github.com/JTostitos/FB14323923

Maybe it's a compiler issue thats failing to strip out the macro when building for older OS's or an Xcode issue - I have no idea. I just would like to know why its not working and how to resolve it.

Thanks in advance for anyones help...

Answered by Engineer in 804050022

Thank you for taking the time to report this to us!

We believe this is fixed with Xcode 16.1 beta 2 and iOS 18.1 beta 4. Please update your bug reports if that's not the case!

This is still an issue as of Xcode 16.1 Beta 1.

I went ahead and made a feedback for this as well -- FB14857535. Hoping this can be addressed before RC.

Thank you for taking the time to report this to us!

We believe this is fixed with Xcode 16.1 beta 2 and iOS 18.1 beta 4. Please update your bug reports if that's not the case!

@Engineer Good morning! I am sorry for the delay in my response. I am just now seeing your message this morning, as I never got a notification of a response on this post.

I have tested this fix using 17.4, 17.5, 18.0, and 18.1. While every device can now launch the app without crashes (yay! 🎉), unfortunately, as soon as you add an iOS 18 AppIntent using the AssistantIntent to an AppShortcutsBuilder, iOS 17 can no longer launch the iOS 17 compatible AppShortcut.

Additionally, there is a regression in iOS 18.1 where the AssistantIntent shortcut no longer prompts you to enter a search term before launching the app. But on iOS 18, this works just fine.

I have updated the feedback with this same information as well as a video to show the issue.

iOS 18 @AssistantIntent's marked with @available crashing on older OS's
 
 
Q