transferCurrentComplicationUserInfotransferUserInfo有什么区别?

我想将数据从AppDelegate发送到时钟套件并发症。
transferCurrentComplicationUserInfo似乎与transferCurrentUserInfo完全相同。我想念什么吗?

最佳答案

这两种 WCSession 方法之间的区别涉及何时发送数据以及是否唤醒了watchkit扩展。transferCurrentComplicationUserInfo:是专门用于传输要在表盘上立即显示的复杂用户信息的。

  • 将复杂用户信息标记为“紧急”,并放置在队列的最前面
  • , watch 会在后台唤醒扩展程序以接收信息,而
  • 转移立即发生。 (此时其他排队的信息也可能会传输。)
  • transferUserInfo:将信息排队,待系统确定是处理队列的好时机进行传输:
  • 用户信息位于队列的后面
  • 如果扩展名未唤醒,则存储传输的信息
  • 转移不会立即发生,而
  • 信息按发送顺序传递。

  • 可以在WWDC 2015 Introducing Watch Connectivity video中找到更多详细信息。
    iOS 10的更新:
    在iOS 10中,WCSession添加了 remainingComplicationUserInfoTransfers 属性,该属性可以影响iOS将使用哪种方法来传输用户信息:

    关于watchkit - transferCurrentComplicationUserInfo是否更适合并发症更新?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33316698/

    10-12 21:13