获取我在 photoLibrary iOS Objective-c 中选择的视频的位置元数据

Posted

技术标签:

【中文标题】获取我在 photoLibrary iOS Objective-c 中选择的视频的位置元数据【英文标题】:get the location metadata of a video I choose in photoLibrary iOS objective-c 【发布时间】:2021-03-22 05:10:58 【问题描述】:

我正在使用 UIImagePickerController 从照片库中选择一个视频。我已经得到了视频的创建时间和日期,我想知道它的拍摄地点。我知道在 iphone 上拍摄的视频将位置作为其元数据的一部分,但我不知道如何访问它。 这是我用于日期和时间的代码。

else if (picker.sourceType ==UIImagePickerControllerSourceTypePhotoLibrary) 
       
       NSURL * movieURL = [info valueForKey:UIImagePickerControllerMediaURL] ;
        
       AVURLAsset *anAsset = [[AVURLAsset alloc] initWithURL:movieURL options:nil];

        PHAsset *theAsset = [info valueForKey:UIImagePickerControllerMediaURL] ;
        
PHAsset *someAsset = [info valueForKey:UIImagePickerControllerPHAsset];
        NSLog(@"someAsset%@",someAsset.location);
        self.currentLocation = someAsset.location;
            NSLog(@"creationDate1:%@",theAsset);
            NSLog(@"creationDate2:%@",anAsset.creationDate.value);
      
        NSDate *creationDate =(NSDate *)anAsset.creationDate.value;
        NSDateFormatter *dateFormatter=[[NSDateFormatter alloc] init];
        [dateFormatter setDateFormat:@"MMMM-dd-yyyy"];
        dayString = [dateFormatter stringFromDate:creationDate];
        NSDateFormatter *dateFormatter2=[[NSDateFormatter alloc] init];
        [dateFormatter2 setDateFormat:@"hh:mm a"];
        timeString = [dateFormatter2 stringFromDate:creationDate];

我试图找到位置密钥,但没有成功。 有人可以告诉我如何做到这一点或指出一个好的教程以及如何完成这个。我正在使用objective-c。

感谢所有帮助。

【问题讨论】:

【参考方案1】:

所以我终于想通了。我添加了这些代码行

PHAsset *someAsset = [info valueForKey:UIImagePickerControllerPHAsset];
        NSLog(@"someAsset%@",someAsset.location);
        self.currentLocation = someAsset.location;  

我将更改我原来的帖子以反映更改。

【讨论】:

以上是关于获取我在 photoLibrary iOS Objective-c 中选择的视频的位置元数据的主要内容,如果未能解决你的问题,请参考以下文章

如何从 Photolibrary 图像中获取拇指图像?

iOS 8 照片库 - 使用 PHAssetChangeRequest 添加资产时出错

如何从 iphone 照片库中获取照片总数。?

Phonegap|Android 4 - 从 PHOTOLIBRARY 拍照时,应用程序有时会崩溃

Cordova Camera Plugin PhotoLibrary Android

HealthKit:获取由身体活动、背景和终止状态触发的通知(Obj-C,iOS 10.3)