2015-08-26 21 views
1

我正在使用分析pinInBackground功能來保存稍後將與解析同步的信息,但其中一部分信息是已拍攝的照片,但在重新啓動應用程序之前info與Parse同步,圖像丟失。 當應用程序重新啓動時,如何不丟失圖片。 我必須將它保存在本地嗎?如果是這樣,在哪裏以及如何? 預先感謝您,讓我知道是否需要我的任何代碼。當應用程序重新啓動時,照片丟失並取消固定

//Here I pin the picture in the background 
@IBAction func cameraButton(sender: AnyObject) { 
    imagePicker = UIImagePickerController() 
    imagePicker.delegate = self 
    imagePicker.sourceType = .Camera 
    presentViewController(imagePicker, animated:true, completion: nil) 
} 

func imagePickerController(picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [NSObject : AnyObject]) { 

    let pickedImage:UIImage = info[UIImagePickerControllerOriginalImage] as! UIImage 
    let imageData = UIImageJPEGRepresentation(pickedImage, 0.5) 
    let imageFile:PFFile = PFFile(data: imageData) 


    locationLogs["photo"] = imageFile 
    locationLogs.pinInBackgroundWithBlock{ (success: Bool, error: NSError?) -> Void in 

     if (success) { 
      self.locationManager.stopUpdatingLocation() 
     }else{ 
      println("error= \(error)") 
     } 
    } 
    imagePicker.dismissViewControllerAnimated(true, completion: nil) 
} 

//Query it 
func queryAll() { 
    let query = PFQuery(className:"LocationLogs") 

    query.fromLocalDatastore() 
    query.findObjectsInBackgroundWithBlock({ (NSArray results, NSError error) in 
     if error == nil && results != nil { 
      println("array = \(results)") 
      self.tableData = results! 
      self.loggedItemsTableView.reloadData() 
     }else{ 
      println("An error has occured= \(error)") 
     } 
    }) 
} 

//Save and unpin it 
@IBAction func syncAllButton(sender: AnyObject) { 

    PFObject.saveAllInBackground(self.tableData as [AnyObject], block: { (success: Bool, error: NSError?) -> Void in 
     if (success) { 

      PFObject.unpinAllInBackground(self.tableData as [AnyObject]) 

      println("Pinned Data has successfully been saved") 


     }else{ 
      println("error= \(error?.localizedDescription)") 
     } 
    }) 
} 
+1

你可以把你正在使用的代碼,試圖檢索固定的數據? –

+0

我加了我的代碼(: – BENQ

回答

0

解析保存在tmp/目錄中的照片,並重新啓動應用程序時,將tmp/擦拭。 將圖片保存到Documents/目錄,當您同步時,從Documents/中拉出圖片並保存。 我不知道代碼,所以如果有人可以給一個解釋,那將是greeeeaaat

相關問題