How to handle errors in App Intents for Controls in iOS 18

Controls' actions use App Intents in iOS 18.

However, when executing App Intents from Controls, alert dialogs such as IntentDialog can't be used.

This makes it unclear how to display errors when trying to create Controls that do not launch the app.

Is there any way to handle this?

Can we get some clarification from an Apple engineer on what AppIntent result types are supported by Controls?

It seems silly that we have access to so much from the AppIntents/AppShortcuts ecosystem which all compiles fine but fails silently when used with Controls. Dialogs and snippet views feel like things that should be supported. If they can't be used directly, we should at least be given the option to launch an existing AppShortcut that utilizes them.

It seems like without putting the control intent and widget within both the extension and app target, and having the intent open the app, the point of the intent is pretty much useless. It's not clear to me, nor is it presently debuggable, what type of functionality can be run in a ControlConfigurationIntent at all.

To answer your question it seems currently the only options are opening the app and showing an error message there, or briefly starting a live activity which might display an error message, and then invalidates itself after a set time interval. This seems like a ill-advised workaround though.

There's no supported way for you to show errors from Controls with the APIs currently available. If you'd like us to consider adding the necessary functionality, please file an enhancement request using Feedback Assistant. Once you file the request, please post the FB number here. If you're not familiar with how to file enhancement requests, take a look at Bug Reporting: How and Why?

Rico WWDR - DTS - Software Engineer

How to handle errors in App Intents for Controls in iOS 18
 
 
Q