如何使用swift将图像数据和GPS元数据写入已保存的相册?
我正在尝试将GPS元数据添加到使用自定义相机应用程序拍摄的图像中。我的相机应用程序按预期拍摄图像,我拍摄的每张照片中都包含许多苹果特有的元数据值。然而,我似乎无法添加GPS数据。我做错了什么?谢谢如何使用swift将图像数据和GPS元数据写入已保存的相册?,swift,alassetslibrary,ios8.1,Swift,Alassetslibrary,Ios8.1,我正在尝试将GPS元数据添加到使用自定义相机应用程序拍摄的图像中。我的相机应用程序按预期拍摄图像,我拍摄的每张照片中都包含许多苹果特有的元数据值。然而,我似乎无法添加GPS数据。我做错了什么?谢谢 class ViewController: UIViewController { var output : AVCaptureStillImageOutput! var locationManager : CLLocationManager() override func viewDi
class ViewController: UIViewController {
var output : AVCaptureStillImageOutput!
var locationManager : CLLocationManager()
override func viewDidLoad()
createCamera()
initLocationManager()
super.viewDidLoad()
}
func createCamera(){
//create camera code. works fine
}
func takePhoto(){
self.output.captureStillImageAsynchronousFromConnection(self.connection){
buffer, error in
if let error = error{
println("Error: \(error)")
}
else{
var imageData = AVCaptureStillImageOutput.jpegStillImageNSDataRepresentation(buffer)
var metadata = self.getImageMetaData()
var library = ALAssestsLibrary()
library.writeImageDataToSavedPhotosAlbum(imageData, metadata, completionBlock: {
(assetURL: NSURL!, error: NSError!) -> Void in
})
}
}
}
func getImageMetadata() -> NSMutableDictionary{
var locDict = NSMutableDictioary()
locDict.setObject(self.locationManager.location.timestamp, forKey: "KCGImagePrropertyGPSTimeStamp")
locDict.setObject("N", forKey: kCGImagePropertyGPSLatitudeRef")
locDict.setObject(self.locationManager.location.coordinate.latitude, forKey: "kCGImagePropertyGPSLatitude")
locDict.setObject("W", forKey: "kCGImagePropertyGPSLongitudeRef")
locDict.setObject(self.locationManager.location.coordinate.longitude, forKey: "kCGImagePropertyGPSLongitude")
return locDict
//this returns the correct coordinates
//NOTE: I hard coded the Ref values for brevity.
}
}
注意:我正在使用查看元数据。您可以这样做吗?