gpt4 book ai didi

xcode - 为什么我不能导入 ClockKit 并在 Xcode Playground 中使用 CLKComplicationDataSource?

转载 作者:行者123 更新时间:2023-11-28 11:09:34 25 4
gpt4 key购买 nike

我可以导入 WatchKitWatchConnectivity 并使用各种委托(delegate),如 WCSessionDelegate,没有任何问题。

但是当我尝试导入 ClockKit 或添加 CLKComplicationDataSource 时,Xcode 会抛出“不存在模块”之类的错误。

为了检查这一点,我创建了一个 watch 应用程序项目并检查了 ComplicationController.swift。它在源代码中确实有 import ClockKit

为什么我们不能在 Xcode Playground 中测试这个 API?这不是违背了拥有 Playground 的目的吗?

最佳答案

不,你不能,原因如下。

  • Playground 在 iOS 模拟器上运行,而不是 watchOS 模拟器。您想要使用或测试的内容在 iOS 中不可用。

  • ClockKit框架更像是与表盘复杂功能相关的对象集合。它在 playground 中可用是没有意义的,因为 playground 本身不会有任何并发​​症。

  • 您无法在 playground 中真正测试复杂功能,因为 playground 中没有运行会调用您的数据源方法的交互式复杂功能服务器。

    并发症在后台运行,并由并发症服务器管理。当您的复杂功能在表盘上处于事件状态(启用)时,系统会在后台唤醒您的扩展程序,实例化您的数据源实例,然后获取该复杂功能所需的必要数据:

    You do not instantiate your data source class explicitly. After defining your class, specify the class name in the General tab of the project settings for your WatchKit extension. When the system needs data, it instantiates your class and initializes it by calling its init method. Once initialized, it calls the corresponding protocol methods to gather any needed data.

你可以 submit a feature request要求 Apple 让您在 Playground 上以交互方式测试您的复杂功能 Controller 。

关于xcode - 为什么我不能导入 ClockKit 并在 Xcode Playground 中使用 CLKComplicationDataSource?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35996691/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com