如何通过启动watchOS并发症中的调用从iOS应用中提取数据?

时间:2018-09-04 15:29:45

标签: watch-os apple-watch-complication

我当前正在放置

[[WCSession defaultSession] transferUserInfo:applicationDict];

在我的并发症控制器内部

getCurrentTimelineEntryForComplication

我知道这不是正确的位置,但是对于应该何时何地开始从iOS提取信息,我感到困惑。这似乎是稀疏的记录。

我的目标是让它对iOS中的一个函数进行初始调用,该函数将从服务器获取数据并通过将数据放入watchOS侧的类中进行响应。我还希望以后可以定期更新。

那我该怎么做呢?

1 个答案:

答案 0 :(得分:0)

不建议在“ getCurrentTimelineEntryForComplication”内从电话请求数据。 Apple建议您使用

获取数据
handle(_ backgroundTasks: Set<WKRefreshBackgroundTask>)

在您的ExtensionDelegate中或使用iOS的backgroundRefreshTask将数据推送到手表上

WCSession.default.transferCurrentComplicationUserInfo(_)

内部

application(_ application: UIApplication, performFetchWithCompletionHandler completionHandler: @escaping (UIBackgroundFetchResult) -> Void)