Migration Path for Existing Widgets to new Custom Intents

I have an interesting scenario that I can't seem to figure out with the existing Intent/Widget APIs.

Scenario:

Version 1.0:

I have two widget types that shared a custom intent (because they both only needed the same configuration value (i.e., a theme)). These are different kinds of widgets

Widget A, Custom Intent 1
Widget B, Custom Intent 1


Version 2.0
After getting the widgets into the hands of my users, it has become obvious that I need to provide some specific options to each widget kind moving forward. This means I would like to create two unique Custom Intents to house the specifics of the each customization option I would like to provide.

I would like the end scenario to look like:

Widget A, Custom Intent 2
Widget B, Custom Intent 3


I have no issue seeing how to create these intents and set them up. That is trivial. However, I can't seem to figure out an easy to migrate a user who has installed a widget from Version 1,0, and migrate it to a new Custom Intent. The widget just fails to load when I upgrade the app.

Does anyone have any insight on how I could do this migration? I don't want to push an update that just bricks all the widgets for the Version 1.0 users, and require them to remove them and set them up again.

Accepted Reply

Unfortunately there is no supported way to do this today without making a new Widget. Please file an Enhancement Request if you would to see us add support for this.

Replies

Unfortunately there is no supported way to do this today without making a new Widget. Please file an Enhancement Request if you would to see us add support for this.
Thanks ricob. The first time ever that DRY has come back to bite me....

I've been trying to figure out if there is any way to dynamically show intent options, but I can't seem to find hooks that give me the ability hide/show the options themselves. Is there an advanced API anywhere that I could use to accomplish that, and just stick all of these options into the single existing custom intent and use logic to determine which ones to show?
Submitted FB8828284