当前位置:  开发笔记 > IOS > 正文

如何连接和调试自定义ClockKit并发症控制器?

如何解决《如何连接和调试自定义ClockKit并发症控制器?》经验,为你挑选了1个好方法。

我正在尝试定制ClockKit Complication工作.

    我创建了一个符合的自定义ComplicationControllerCLKComplicationDataSource.它被添加到Watch Extension的plist中CLKComplicationPrincipalClass.

我可以在手表上选择一个复杂功能并激活它,但我只看到"---------------"而不是我的实际占位符.

我尝试了什么

override init(){…}在我的ComplicationController中添加了自定义,并在其中添加了一个断点用于调试.但即使运行Complication 构建方案,也永远不会达到这个断点.似乎我的自定义ComplicationController从未实例化.

我确实看到了一条日志消息,Extension received request to wake up for complication support.但我不清楚这是在代码中触发的位置.

我也试着从我的主人InterfaceController那里打电话给我,以了解我的主动并发症

if let server = CLKComplicationServer.sharedInstance() {
    for complication in server.activeComplications {
        server.reloadTimelineForComplication(complication)
    }
}

......但是server返回零.没有并发症似乎是活跃的并且重新加载.

如何成功连接我的自定义ComplicationController?

此外,欢迎任何其他调试技巧.

通常是否足以从手表模拟器或iPhone上的手表应用程序中删除并发症,或者您是否需要重新安装整个手表应用程序以查看有效的并发症相关更新?此外,当我在我的自定义ComplicationController中记录某些内容时,我应该只在使用Complications构建方案运行时或者使用正常的Watch App构建方案时才能看到它的输出吗?

欢迎任何寻找问题的想法.



1> lehn0058..:

由于您实际上可以在手表上选择复杂功能,因此听起来就像设置正确的项目一样.由于它没有达到断点,因此听起来复杂功能无法找到您的自定义控制器.由于您使用的是swift,因此需要指定控制器的模块.尝试将watch app的plist中的CLKComplicationPrincipalClass值更改为:

$(PRODUCT_MODULE_NAME).ComplicationController

推荐阅读
可爱的天使keven_464
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有