Updating Widgets from StaticConfiguration to IntentConfiguration Requires Re-Installation

I'm updating my widget from StaticConfiguration to IntentConfiguration. When I do so, existing widgets installed within simulators and on my iPhone device either show a blank screen or a placeholder screen and fail to initialize.

Is there a safe way to upgrade my widget configuration? I would hate to break the widget for our existing users and force them to manually reinstall.
Answered by Engineer in 642754022
Unfortunately there is no supported way to do this today without essentially making a new Widget. You can change the Widget kind but that would not be an officially supported workaround. Please file an Enhancement Request if you would to see us add official support for this.
I'm seeing the same thing. What is the solution here?
I haven't found a solution yet. It seems that upgrading a widget's configuration type is a breaking change. Hopefully an Apple engineer can confirm and/or provide a solution.
I encountered the same problem. After the app was upgraded, the old part displayed the booth image and the edit page was not displayed normally. Is it a system bug?
Same here (at least via TestFlight installation). Will try building with Xcode 12.1 next…
Oddly enough my pre-intent widget started working with my default configuration value after a few days 🤷🏻‍♂️
Same question, has anyone solved it?
If an app update causes a widget to switch from static to intent configuration, any currently running instances of the widget will only display the placeholder. If you tap and hold to Edit Widget, the configuration does not appear.

Dragging out a new instance works fine.

Oddly enough my pre-intent widget started working with my default configuration value after a few days 🤷🏻‍♂️

This would likely be because the widgets were relaunched. One quick way to do this is to restart the phone. There may be other ways, but I've found that a restart works.

I've filed this with Feedback Assistant. FB8825588
Unfortunately there is no supported way to do this today without essentially making a new Widget. You can change the Widget kind but that would not be an officially supported workaround. Please file an Enhancement Request if you would to see us add official support for this.

With all the new Intent based push and APIs... this seems like a glaring omission for developers who originally made more straightforward StaticConfiguration widgets and now want to upgrade them to more advanced and configurable IntentConfiguration ones.

It seems that if I keep the same “kind” String identifier for the widget, they do migrate but only after a restart of the iPhone…. Until that point they just freeze and hang. This isn't really something I can ask my users to do....

I've filed a feedback: FB13880020

🙏🙏 This might get fixed for iOS 18.

Updating Widgets from StaticConfiguration to IntentConfiguration Requires Re-Installation
 
 
Q