Я просто играю с кодом и хочу поделиться картинкой из моего iOS-приложения с моим Apple Watch App.Результатом является то, что, прежде чем сказать мне, что полезная нагрузка была слишком большой (я уменьшил сжатиеКачества и больше не было ошибок), он возвращает мне ошибку «WCErrorCodeDeliveryFailed»: невозможно доставить полезную нагрузку.
Есть предложения?Ниже функции ViewController, которая отправляет изображение:
@IBAction func buttonSend(_ sender: Any) {
if WCSession.isSupported() {
WCSession.default.delegate = self
WCSession.default.activate()
}
let image = UIImage(named: "test_Image.jpeg")
let data = image?.jpegData(compressionQuality: 0.5)
WCSession.default.sendMessageData(data!, replyHandler: { (data) -> Void in
// handle the response from the device
}) { (error) -> Void in
print("error: \(error.localizedDescription)")
}
}
InterfaceController Сторона У меня есть эта функция, которая должна управлять передачей и дать ответ:
func session(session: WCSession, didReceiveMessageData messageData: NSData, replyHandler: (NSData) -> Void) {
guard let image = UIImage(data: messageData as Data) else {
return
}
DispatchQueue.main.async(execute: { () -> Void in
self.imageView.setImage(image)
})
replyHandler(messageData)
}
Большое спасибо!