I've been experiencing this exact issue as well. Using .widgetURL() is very cumbersome, as in my case I'm letting users configure parameters of type Measurement. This type safety would be lost if serialised to a string. It feels like a bug in the handling of userActivity <> Intent since it works as intended only for running state of the app.