ClockKit何时/何地更新后台下载的数据

时间:2019-04-27 16:57:47

标签: watchkit clockkit

我希望我的并发症每天更新几次。每15分钟进行一次更新非常好。我对API进行了调用,在此示例中,我们使用http://worldclockapi.com/api/json/est/now

我对WatchOS中提供的功能感到困惑。通过使用NSLog,我发现Watch每隔几分钟就会不断拨打WKSnapshotRefreshBackgroundTask。我通常不需要它,而此功能似乎旨在更新应用程序的用户界面,这对我来说不是必需的。

我会不时地运行WKApplicationRefreshBackgroundTask以便将结果保存在UserDefaults中,这样看来每当显示复杂性时调用的getCurrentTimelineEntry()都可以直接从中读取数据那里。与WKApplicationRefreshBackgroundTask不同,Snapshot不会自动被调用。显然,您可以在给定的时间触发它,但是我不确定在那完成此操作的最佳实践。我对在特定时间获取数据不感兴趣,我只希望系统使应用程序以合理的频率获取新数据。

我还考虑过只有在自上次请求(节省电池)以来超过30分钟时才使用getCurrentTimelineEntry启动我的httprequests。但是,getCurrentTimelineEntry似乎没有被调用,如果该并发症已隐藏/现在未显示,那么如果用户早上戴手表,它将显示昨晚而不是今天早晨的数据。 / p>

我是否应该为此劫持WKSnapshotRefreshBackgroundTask?如您所知,我现在对此有所了解,但我仍然不知道从这里出发。这可能确实很简单,但是截至目前,我没有明显的路可走。

0 个答案:

没有答案