Swift 如何向自定义意图处理程序提供动态数据?

Swift 如何向自定义意图处理程序提供动态数据?,swift,sirikit,widgetkit,Swift,Sirikit,Widgetkit,上下文:我正在为我创建的新ios14小部件使用一个名为TestConfiguration的定制意图,并选中了“动态选项”。我的目标是允许用户编辑小部件 视图,基于从后端检索的列表中选择的选项,并将更改反映在小部件本身上 我有一个名为IntentHandler的类,它遵循TestConfigurationIntentHandler。在此委托方法中 func provideAssetsOptionsCollection(for intent: TestConfigurationIntent, wit

上下文:我正在为我创建的新ios14小部件使用一个名为TestConfiguration的定制意图,并选中了“动态选项”。我的目标是允许用户编辑小部件 视图,基于从后端检索的列表中选择的选项,并将更改反映在小部件本身上

我有一个名为IntentHandler的类,它遵循TestConfigurationIntentHandler。在此委托方法中

func provideAssetsOptionsCollection(for intent: TestConfigurationIntent, with completion: @escaping (INObjectCollection<TestIntentItem>?, Error?) -> Void) {

但这似乎也不起作用,因为它仍然给我同样的回答。我不明白什么/如何才能做到这一点?

确保在iOS 14.0设备上测试时,Intent处理程序的目标版本也设置为iOS 14.0,而不是iOS 14.1。

确保在iOS 14.0设备上测试时,Intent处理程序的目标版本也设置为iOS 14.0,而不是iOS 14.1。

这太有趣了……因为14.1现在面向大众。你知道为什么会这样吗?14.1是否有不同的实现?@Jay:当扩展的目标操作系统版本(14.1)高于设备的操作系统版本(14.0)时,将不会加载该扩展。因此,在本例中,您将得到一个与非工作意图处理程序相结合的工作小部件。这是有意义的,我没有注意到它仅在iOS 14.0中可用。我如何适应14.1?@Jay:如果你的Widget和Intent处理程序的目标操作系统都设置为14.0,那么它也应该在14.1中工作。或者14.2,今天发布。这非常有趣……因为14.1现在面向大众。你知道为什么会这样吗?14.1是否有不同的实现?@Jay:当扩展的目标操作系统版本(14.1)高于设备的操作系统版本(14.0)时,将不会加载该扩展。因此,在本例中,您将得到一个与非工作意图处理程序相结合的工作小部件。这是有意义的,我没有注意到它仅在iOS 14.0中可用。我如何适应14.1?@Jay:如果你的Widget和Intent处理程序的目标操作系统都设置为14.0,那么它也应该在14.1中工作。或14.2,今天发布。
func confirm(intent: TestConfigurationIntent, completion: @escaping (TestConfigurationIntentResponse) -> Void) {
    completion(TestConfigurationIntentResponse(code: .inProgress, userActivity: nil))
    backendService.fetchData() { result in
        //format all the data
        completion(TestConfigurationIntentResponse(code: .success, userActivity: nil))
    }
}