我的应用程序最初是一个带有独立watchOS扩展的watchOS应用程序。watchOS延长采用ClockKit并发症。最近,我开始升级这个应用程序:
我添加了一个基于SwiftUI的纯手表目标。这个很管用。
现在,我想从依赖的监视目标中的现有ClockKit复杂性迁移到WidgetKit,但只针对新的纯手表目标。
我正在读苹果的将ClockKit并发症转移到WidgetKit。不过,我对这句话有点担心。
重要 在向项目添加WidgetKit扩展后,系统尝试使用它为watchOS应用程序生成复杂的内容。一旦您的WidgetKit扩展开始提供基于小部件的复杂功能,系统就会禁用应用程序的ClockKit复杂性。它不再唤醒应用程序来调用CLKComplicationDataSource对象的方法来请求时间线条目。但是,在将复杂的getWidgetConfiguration(from:completionHandler:),从ClockKit迁移到WidgetKit时,系统仍然可能唤醒数据源来调用WidgetKit。
这是否意味着,在我向我的项目工作区添加了一个WidgetKit扩展之后,我依赖的监视目标的ClockKit复杂性将不再工作了吗?还是这只影响了我的新手表目标?无论如何,是否有可能在同一个工作区中有一个ClockKit复杂目标和另一个WidgetKit复杂目标?
发布于 2022-10-14 18:41:06
是的,在同一个工作区中有一个ClockKit复杂目标和另一个WidgetKit复杂目标是可能的。如果添加了WidgetKit扩展目标,则可以使用Name和Embed Without Signing将其嵌入到target/<watch-only-target>/General/Frameworks, Libraries, and Embedded Content下的只监视目标中。
之后,依赖的监视目标和只监视的目标按预期工作,即具有复杂控制器的依赖目标(监视扩展)和具有WidgetKit_Extension的只监视目标。
https://stackoverflow.com/questions/74043884
复制相似问题