1

我正在使用 WatchKit 2.0 创建对话线程,并且在对话中下载多个图像时遇到困难。我可以使用WatchConnectivity sendMessage. 我可以拿回来NSData,我可以用于UIImage.

当对话线程中有两个不同的图像时,这些调用都不能正确检索图像。我用来触发消息的代码是

if WCSession.isSupported() {
    // Set the session to default session singleton
    session = WCSession.defaultSession()
    // Fire the message to iPhone app
    session!.sendMessage(["action": "getImage", "url": message.media.filename], replyHandler: { (response) -> Void in

        // Extract the image data of the boarding pass
        if let data = response["messageData"] as? NSData {
            row.image.setImage(UIImage(data: data))
        }
        , errorHandler: { (error) -> Void in
            // Print error
            print(error)
    })
}

我尝试使用另一个线程

dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_HIGH, 0))

但这也无济于事。我在 WatchKit 上找到了从 URL 加载图像的帖子,但NSURLSession从未完成,即使只有一张图像。

如何从不同的 URL 检索多个图像?

4

1 回答 1

0

您是否从同一个 sendMessage 调用中请求两个图像?NSData 对象的大小有大小限制,只有几兆字节。您可能想尝试将检索图像的请求分成两个单独的调用。

此外,您的错误处理程序是否打印了任何错误消息?

于 2016-02-11T18:13:51.440 回答