2015-10-14 73 views
1

我開發了一個使用WatchKit 2的應用程序。 我必須從iOS設備傳輸圖像才能觀看。我發送了圖片網址。 這是我值班伸出端代碼,我過去常常把我的WKInterfaceImage圖像:WatchKit沒有下載圖片

 NSError *error = nil; 
     NSData * dataq = [NSData dataWithContentsOfURL:[NSURL URLWithString:"url string"] options:NSDataReadingMappedAlways error:&error]; 
     UIImage *img = [UIImage imageWithData:dataq]; 
     [cell.babyImage setImage:formattedImage]; 

在模擬器(手錶模擬器,觀看模擬器),它的工作原理,但在實際設備(iPhone和手錶)我得到錯誤:

錯誤=

錯誤域= NSCocoaErrorDomain代碼= 256 「文件‘image.jpg的’無法打開」。用戶信息= {NSURL = https://「圖片url」}

回答

3

我有一個類似的問題,只是下載圖像到手錶與NSData,但我沒有從iPhone轉移它。該圖像也沒有顯示在真正的手錶上,而是在模擬器中顯示。

我只是切換到NSUrlSession.dataTaskWithURL和它的工作:

 func loadImage(imageUrl: String, forImageView: WKInterfaceImage) { 

      NSURLSession.sharedSession().dataTaskWithURL(imageUrl, completionHandler: {(data: NSData?, response: NSURLResponse?, error: NSError?) -> Void in       
       if let image = UIImage(data: data!) { 
        dispatch_async(dispatch_get_main_queue()) { 
         forImageView.setImage(image) 
        } 
       } else { 
        NSLog("could not load data from image URL: \(imageUrl)") 
       } 
      }).resume() 
     }