transferCurrentComplicationUserInfo
和transferUserInfo
之间的区别是什么?
我想将AppDelegate的数据发送到时钟套件复杂功能。
transferCurrentComplicationUserInfo
似乎与transferCurrentUserInfo
完全相同。我错过了什么吗?
答案 0 :(得分:7)
这两种WCSession
方法之间的区别涉及何时发送数据,以及是否唤醒了watchkit扩展。
transferCurrentComplicationUserInfo:
专门用于传输即将在表盘上显示的复杂功能用户信息。
transferUserInfo:
将信息排队,当系统确定是处理队列的好时机时传输这些信息:
更多详细信息,请参阅WWDC 2015 Introducing Watch Connectivity video。
iOS 10更新:
在iOS 10中,WCSession
添加了remainingComplicationUserInfoTransfers
属性,该属性可以影响iOS用于传输用户信息的方法:
您可以在当天拨打
transferCurrentComplicationUserInfo:
的剩余时间。如果此属性设置为0,则对transferCurrentComplicationUserInfo:
的任何其他调用都会改为使用transferUserInfo:
。如果复杂功能在活动表盘上,则每天进行50次转移。如果并发症未激活,则此属性默认为0。
答案 1 :(得分:1)
据我所知: 当从父app app委托调用时,TransferCurrentComplicationUserInfo具有与transferCurrentUserInfo相同的功能,但是,TransferCurrentComplicationUserInfo也调用CLKServer ......等来更新复杂性。我不得不说我发现两者都不可靠,我正在努力使用TransferCurrentComplicationUserInfo更新我的应用程序。似乎并不总是奏效。令人讨厌的是,它在构建之间变化而不改变代码,这在技术上是不可能的。哦,好吧......