iOS - 获取系统相册照片名称,路径以及各项信息
2016-11-06 19:20
761 查看
最近做的项目 , 在我看来都停偏的 , 因为需要的都不仅仅是展示和业务逻辑 , 而主要都是网络和存储,文件,流媒体操作方面的东西 . 所以今天想要获取下照片的名称 , 还找了挺久的 . 以此记录下 , 直接上代码 .
首先让当前控制器遵循 UINavigationControllerDelegate,UIImagePickerControllerDelegate 这两个协议 , 并实现其方法 , 用于打开相册并选择照片
代理方法
尤其需要注意的是: 苹果为了保护用户隐私 , 我们开发者是拿不到相册里视频和照片的路径的 , 此路径是指物理路径 , 而并非上述的URL
首先让当前控制器遵循 UINavigationControllerDelegate,UIImagePickerControllerDelegate 这两个协议 , 并实现其方法 , 用于打开相册并选择照片
//打开相册 - (void)uploadPhoto { if ([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypePhotoLibrary]) { UIImagePickerController *picker = [[UIImagePickerController alloc] init]; //设置当前控制器为picker对象的代理 picker.delegate = self; picker.sourceType = UIImagePickerControllerSourceTypePhotoLibrary; [self presentViewController:picker animated:YES completion:nil]; } }
代理方法
//获取照片信息 - (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary<NSString *,id> *)info { //获取图片的名称 //获取 NSURL *url = [info objectForKey:UIImagePickerControllerReferenceURL]; //导入 #import <AssetsLibrary/AssetsLibrary.h> 库 //创建 ALAssetsLibrary 对象 ALAssetsLibrary *library = [[ALAssetsLibrary alloc]init]; [library assetForURL:url resultBlock:^(ALAsset *asset){ //获取图片 UIImage *image = info[UIImagePickerControllerOriginalImage]; //获取照片名称 NSString *fileName = asset.defaultRepresentation.filename; //获取照片元数据 ,包含一些RGB什么的 NSString *fileName = asset.defaultRepresentation.metadata; //获取照片大小比例等等... defaultRepresentation的属性中可以查看 .... //开始上传 (此方法无视 , 这是项目中需要的方法) [JYCenterAddUploadManager executeUpLoadFileWithFile:image fileParent:@"root" fileName:fileName fileType:JYUpLoadFileTypeImage response:^(JYDownLoadTaskModel *taskModel) { }]; }failureBlock:^(NSError *error){ [NSObject alertShowWithSingleTipWithtarget:self title:@"获取相册失败" makeSureClick:nil]; }]; [picker dismissViewControllerAnimated:YES completion:nil]; }
尤其需要注意的是: 苹果为了保护用户隐私 , 我们开发者是拿不到相册里视频和照片的路径的 , 此路径是指物理路径 , 而并非上述的URL
相关文章推荐
- iOS 获取系统相册全部照片以及照片信息
- iOS开发:调用系统自带相机以及获取相册照片的功能实现
- 【学习ios之路:UI系列】获取通过UIImagePackerController获取的系统相册图片的名称信息及保存系统相册到本地
- ios学习--获取通过UIImagePackerController获取的系统相册 图片&视频 的名称信息
- 5.获取iOS系统中相册信息的方法
- 系统相册图片路径获取以及反取图片
- iOS 系统相册获取图片,保存图片,以及剪切图片
- 获取IOS系统相册中的照片
- QT QString根据路径获取文件名称以及所在文件夹等信息
- iOS开发-调用系统相机和相册获取照片示例
- 在S5PV210平台上实现二代身份证解码,安卓系统,可以获取全部文字信息以及电子照片
- IOS获取系统相册中照片的示例代码
- iOS判断应用是否获取到系统相机 相册的授权 以及如何请求授权
- ios读取系统相册以及获取图片的名字
- iOS 开发调用相机以及获取相册照片功能
- 获取客户端信息,主机名称,系统登录名,MAC地址,以及其它
- iOS 开发调用相机以及获取相册照片功能
- ios获取设备信息-设备名称,系统名称等等
- 本附录介绍iOS系统包含的框架,它们为编写iOS平台的软件提供必要的接口。下面的表格尽可能地列出框架中的类、方法、函数、类型以及常量使用的关键前缀,请避免在您的符号名称中使用这些前缀。
- 如何获取iphone的硬件版本以及系统信息