【问题标题】:WCSession: is it possible to cancel queued message?WCSession:是否可以取消排队的消息?
【发布时间】:2016-08-28 18:54:31
【问题描述】:

有什么办法可以取消WCSession的sendMessage(_:replyHandler:errorHandler:)方法发送的消息?

来自documentation:

消息按顺序排列并按照您发送它们的顺序传递。

【问题讨论】:

    标签: ios swift watchkit watchconnectivity wcsession


    【解决方案1】:

    没有。这种类型的转移是不可取消的,因为

    • 操作系统会立即将任何sendMessage 数据发送到reachable 对应对象

      使用 [sendMessage] 方法将数据传输到可访问的对应方。这些方法用于在您的 iOS 应用和 WatchKit 扩展之间进行即时通信。

      使用 [sendMessage] 和 transferCurrentComplicationUserInfo: 方法发送的数据具有更高的优先级并立即发送。

    • 操作系统没有提供专门取消消息的机制

      具有cancel 方法的唯一WCSession 对象是WCSessionUserInfoTransfer 和WCSessionFileTransfer,因为较低优先级的transferUserInfo 或transferFile 数据不会立即发送,而是在由下式确定的最佳时间发送操作系统。

    【讨论】:

      猜你喜欢
      • 2014-11-01
      • 2021-12-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-04-02
      • 2012-05-12
      • 1970-01-01
      相关资源
      最近更新 更多