如何获取拍摄照片的位置(lat / lng)或已拍摄的照片

时间:2018-03-27 09:51:48

标签: ios objective-c

这似乎是重复的,但是资源库框架(当前框架大部分答案都用于同一个问题)从iOS 9.0开始被弃用,如apple developer docs所示。

我需要做的是从当前拍摄的照片或之前拍摄的照片中获取lat / lng(在iOS 5+设备上,因为它有位置标记)。一些示例代码会很棒

由于

1 个答案:

答案 0 :(得分:0)

试试这个

NSData* pngData =  UIImageJPEGRepresentation(image, 1.0);

CGImageSourceRef mySourceRef = CGImageSourceCreateWithData((CFDataRef)pngData, NULL);

if (mySourceRef != NULL)
{
    NSDictionary *myMetadata = (__bridge NSDictionary *)CGImageSourceCopyPropertiesAtIndex(mySourceRef,0,NULL);
    NSDictionary *GPSDictionary = [myMetadata objectForKey:(NSString *)kCGImagePropertyGPSDictionary];

    NSLog([GPSDictionary valueForKey:(NSString*)kCGImagePropertyGPSLongitude]);
    NSLog([GPSDictionary valueForKey:(NSString*)kCGImagePropertyGPSLatitude]);

}