如何在手表复杂功能内进行倒计时?

ymo*_*tov 4 ios swift watchkit apple-watch-complication watchos-3

我正在处理一个应该在几分钟内提供倒计时的并发症?假设用户将其指定为 25 分钟,因此复杂功能应每分钟更新一次计数,直到达到 0。

根据我的研究,应该使用scheduleBackgroundRefreshAPI 调用更新复杂性。但是,看起来苹果并不能保证 watchOS 唤醒应用程序的准确时间。此外,每分钟安排一次刷新似乎是一种错误的方法。

我还考虑getTimelineEntries在我的CLKComplicationDataSource. 然而,这也没有奏效。

有没有合适可靠的方法来制作这种类似秒表的复杂功能?

ymo*_*tov 6

使用CLKRelativeDateTextProvider. 来自苹果文档:

您可以使用相对日期文本提供程序以有效的方式实现计时器或其他相对时间值。不要使用多个时间线条目来复制倒数计时器,而是使用相对日期文本提供程序创建单个时间线条目。