iOS App中调用相册中图片及获取最近的一张图片的方法

2020-01-14 20:11:30于海丽

- (void)imagePickerController:(UIImagePickerController *)picker
 didFinishPickingMediaWithInfo:(NSDictionary *)info;
选取的信息都在info中,info 是一个字典。

 

字典中的键:

  • NSString *const  UIImagePickerControllerMediaType ;指定用户选择的媒体类型(文章最后进行扩展)
  • NSString *const  UIImagePickerControllerOriginalImage ;原始图片
  • NSString *const  UIImagePickerControllerEditedImage ;修改后的图片
  • NSString *const  UIImagePickerControllerCropRect ;裁剪尺寸
  • NSString *const  UIImagePickerControllerMediaURL ;媒体的URL
  • NSString *const  UIImagePickerControllerReferenceURL ;原件的URL
  • NSString *const  UIImagePickerControllerMediaMetadata;当来数据来源是照相机的时候这个值才有效


    获取最近的一张图片

    最近的需求需要我模仿微信聊天提示最新的一张图片这个功能。
    先讲讲思路。
    思路很简单,点击“+”号的时候获取相册列表,获取最新保存的一张图片。根据图片保存时间,与当前时间戳进行计算,获得间隔时间。从而判断是否是需求的时间间隔。(时间间隔自定义)
    计算公式:当前时间 - 图片保存时间 <= 时间间隔
    那么根据这个思路就开始写一个分类。
    它是关于ALAssetsLibrary的获取功能,那么就根据他写一个分类。
    但是在iOS9后这个库过时了,不过还是将他封装一份,到时候新建一个工具类进行适配就行了。

    复制代码
    //ALAssetsLibrary+WJ.h
    #import <AssetsLibrary/AssetsLibrary.h>
    @interface ALAssetsLibrary (WJ)
    /**