问题描述
我们已经实现了 WidgetKit 扩展,所以因为在 iOS 14 上,今天扩展似乎一直放在今天视图的底部,我们想简单地删除 iOS 14 上的今天扩展并只保留它iOS 13 用户,但我还没有找到方法来做到这一点。
注释代码并没有多大作用。我怀疑是因为 appex 还在那里。
可用性 API 似乎没有办法在文件级别指定最大 iOS 版本,只能在方法内部(其他分支)。
我已尝试在主应用和今日扩展视图中设置 NCWidgetController().setHasContent(false,forWidgetWithBundleIdentifier: "...")
。
任何这些解决方案所做的唯一一件事就是使 Today Extension 显示为无法加载,但实际上并没有消失。
有什么我遗漏的吗?
解决方法
今天的扩展要么在您的捆绑包中,要么不在。您不能根据执行设备有条件地包含它,因为您不知道您的应用在编译时将在哪个版本的 iOS 上执行。
您可以将最低支持的 iOS 版本提高到 14 并删除今天的扩展或保持与早期版本的兼容性并保留它。