获取用于主动并发症的时间线条目和模板?

时间:2016-03-24 02:22:42

标签: swift swift2 watch-os-2 apple-watch-complication clockkit

我想在requestedUpdateDidBegin函数中有条件地重新加载我的活动复杂功能,或者实际告诉ClockKit在当前时间轴条目结束前15分钟设置下一次检查,但怎么能我不知道目前的并发症中有什么?

这是我想要做的事情:

    if let complications = CLKComplicationServer.sharedInstance().activeComplications {
        for item in complications {
            // Get timeline entry and template used?
        }
    }

对于当前的并发症,我只能获得家庭,但没有其他信息,如时间轴日期或模板使用。有没有办法得到这个?

1 个答案:

答案 0 :(得分:1)

The complication server向您的并发症控制器请求数据,但它并非旨在向您提供其时间线数据。您可以从服务器上找到最早和最晚的旅行日期。

您必须首先从用于创建时间轴条目的原始数据中获取时间轴详细信息。

至于在最后一个条目结束前15分钟安排更新,您可以非常轻松地将其作为上一个重新加载请求的一部分进行安排。复杂服务器请求的最后一件事(在重新加载或延长时间线之后)是下一个更新日期。

由于并发症服务器刚刚要求您提供getTimelineEntriesForComplication:afterDate:中的未来时间表条目,您可以记下上次时间表条目的日期,将其偏移15分钟,然后返回该新日期一次getNextRequestedUpdateDateWithHandler暂时被召唤。