使用什么通信,updateApplicationContext 或 sendMessage 用于持续数据同步

What communication to use, updateApplicationContext or sendMessage for constant data sync

我有一个 iOS 购物清单应用程序,其中添加项目并显示在 tableView 中。我想创建一个 Watch App Extension,但我在考虑在这种情况下使用的最佳函数调用是什么,updateApplicationContext(:) 方法或 sendMessage(:replyHandler:errorHandler :) 方法我正在阅读 documentation 但我有点困惑,因为两者似乎都有效。

这是我期望的功能……

我想要的是能够在 iOS 应用程序中添加项目,即使 Watch 应用程序已关闭,这是正常行为,但我希望 Watch 应用程序使用 tableView 中的任何内容进行更新(在 iOS 中)一旦打开,即使 iPhone 在手表打开时未打开。

换句话说,我希望 iOS 应用程序中的数据始终与 Watch 应用程序同步。

在这种情况下,哪个是最好的函数调用,updateApplicationContext(_:) 方法还是 sendMessage(_:replyHandler:errorHandler:) 方法?

谢谢

至于我,我会使用 updateApplicationContext(_:),因为您希望在连接时实时或在后台更新它。

至于这个 sendMessage(_:replyHandler:errorHandler:) 缺点是 The isReachable property must currently be true for these methods to succeed. 因此您可能会稍微延迟更新 UI 直到它可以访问并请求更新。