簡體   English   中英

來自UIImagePicker的圖像的NSURL

[英]NSURL of an image from UIImagePicker

我正在嘗試將手機中的圖像上傳到我的Amazon S3存儲桶:

func imagePickerController(picker: UIImagePickerController, didFinishPickingImage image: UIImage!, editingInfo: [NSObject : AnyObject]!)
{
    var uploadReq = AWSS3TransferManagerUploadRequest()
    uploadReq.bucket = "bucketname";
    uploadReq.key = "testimage.png"
    uploadReq.body = image; //This line needs an NSURL
}

如何從UIImagePickerController獲取用戶選擇的圖像的NSURL?

雖然鄭潔的答案可能有用。 我找到了一種更簡單的方法:

    let fileURL = NSURL(fileURLWithPath: NSTemporaryDirectory().stringByAppendingPathComponent("imagetoupload"))
    let data = UIImagePNGRepresentation(image)
    data.writeToURL(fileURL!, atomically: true)
    uploadReq.body = fileURL

首先,U應該將圖像保存到文檔目錄。 然后發布網址。 你可以這樣:

func imagePickerController(picker: UIImagePickerController, didFinishPickingImage image: UIImage!, editingInfo: [NSObject : AnyObject]!) {
let data = UIImagePNGRepresentation(image)  // get the data
let paths = NSSearchPathForDirectoriesInDomains(.DocumentDirectory,.UserDomainMask,true) as! [String]
let path = paths[0]
let fileName = "testimage.png"
let filePath = path.stringByAppendingPathComponent(fileName)  // get the file url to save 

var error:NSError?
if !data.writeToFile(photoPath, options: .DataWritingAtomic, error: &error) {// save the data
  logger.error("Error write file: \(error)")
}

upload.body = NSURL(string: filePath)  // used url to post to server
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM