2016-03-14 4 views
0
Error: Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Could not save file data for image.png : Error Domain=NSCocoaErrorDomain Code=263 "Failed to create PFFile with data: data is larger than 10MB." UserInfo={NSLocalizedDescription=Failed to create PFFile with data: data is larger than 10MB 

Использование www.heroku.com в качестве альтернативного parse.com. Он использует базу данных MonoLab, и я пытаюсь отправить изображение в свою базу данных, но он возвращает ошибку, которая превышает 10 МБ.Swift 2, Xcode 7.2 'NSInternalInconsistencyException

Как я могу получить его для публикации? Есть ли что-то, что я могу сделать? Noobie быстрый программист.

Вот мой код:

import UIKit 
import Parse 

class PostImageViewController: UIViewController, UINavigationControllerDelegate, UIImagePickerControllerDelegate { 

@IBOutlet var imageToPost: UIImageView! 

@IBOutlet var message: UITextField! 

@IBAction func chooseImage(sender: AnyObject) { 

    // ... import image 
    let image = UIImagePickerController() 
    image.delegate = self 
    image.sourceType = UIImagePickerControllerSourceType.PhotoLibrary 
    image.allowsEditing = false 

    self.presentViewController(image, animated: true, completion: nil) 

} 

func imagePickerController(picker: UIImagePickerController, didFinishPickingImage image: UIImage, editingInfo: [String : AnyObject]?) { 

    // ... when user has picked image 
    self.dismissViewControllerAnimated(true, completion: nil) 

    imageToPost.image = image // set the imageToPost to the image selected in Library 


} 

@IBAction func postImage(sender: AnyObject) { 

    let post = PFObject(className: "Post") 

    post["message"] = message.text 
    post["userId"] = PFUser.currentUser()!.objectId! 


    // save image 
    let imageData = UIImagePNGRepresentation(imageToPost.image!) 
    let imageFile = PFFile(name: "image.png", data: imageData!) 

    post["imageFile"] = imageFile 
    post.saveInBackgroundWithBlock { (success, error) -> Void in 

     // 

     if error == nil { 

      print("Success") 

     } 
    } 

} 

ответ

0

Возможно изменение размеров и имеют imageData меньше. Более простой подход может заключаться в следующем:

let imageData = UIImageJPEGRepresentation(imageToPost.image!, 0.1) 
let imageFile = PFFile(name: "image.png", data: imageData!) 
Смежные вопросы