【问题标题】:WCSession sendMessageData not working in watchOS 3WCSession sendMessageData 在 watchOS 3 中不起作用
【发布时间】:2017-02-16 09:11:57
【问题描述】:

我正在尝试将图像从 iOS 发送到 watchOS,但出现以下错误。

sendMessageData 出现错误:错误域=WCErrorDomain 代码=7014 “无法交付有效载荷。” UserInfo={NSLocalizedDescription=Payload 无法传送。

我在 ViewController 类中的代码

var session: WCSession?
    override func viewDidLoad() {
        super.viewDidLoad()
        session?.delegate = self
        if (WCSession.isSupported()) {
            session = WCSession.default()
            session?.delegate = self
            session?.activate()
        }

    }

     let image = UIImage(named: "img1")!
     let data = UIImagePNGRepresentation(image)
     session?.sendMessageData(data!, replyHandler: { (data) in
          print(data)
        }) { (error) in
            print(error)}
}

在接口控制器类中

  override func willActivate() {
        super.willActivate()
        if (WCSession.isSupported()) {
            session = WCSession.default()
            session.delegate = self
            session.activate()
        }
    }

 func session(_ session: WCSession, didReceiveMessageData messageData: Data) {
        guard let image = UIImage(data: messageData) else {
            return
        }
        print(image)
 }

谢谢,

【问题讨论】:

    标签: ios swift3 watchos-3 wcsession


    【解决方案1】:

    我认为您需要尝试下面提到的here 协议。

     func session(_ session: WCSession, didReceiveMessageData messageData: Data, replyHandler: @escaping (Data) -> Void) {
    
        guard let image = UIImage(data: messageData) else {
            return
        }
    
        print(image)
        imageSet.setImage(image)
    }
    

    【讨论】:

      猜你喜欢
      • 2023-03-30
      • 1970-01-01
      • 1970-01-01
      • 2015-12-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多