1. Model

PHAsset 、PHAssetCollection、PHCollectionList 是Photos框架中的模型类,PHAsset类模型是图片或者视频文件数据;PHAssetCollection即图片或者视频文件的集合,包括相册、moments、智能相册以及共享照片流;PHCollectionList是一组资源集合,可能是一组Assets,也可能是一组collection。 它们关系如下图:

photos_model.png

1.1 PHAsset

PHAsset是iOS8平台的新接口,用来获取图片和视频文件的元数据,相当于以前的 ALAsset接口,但比起ALAsset,PhotoKit 提供了额外的关于用户资源的元数据,而这些数据在以前使用 ALAssetsLibrary 框架中是没有办法访问,或者很难访问到。我们可以用PHAsset保存图片和视频资源对象, 然后展示或者修改它.它有几个重要属性:

  • mediaType :资源类型,图片或者音频或视频

    Paste_Image.png
  • mediaSubtypes :图片又包含全景图(Panorama)、HDR图片、屏幕截图、livePhoto.live photo 加3Dtouch效果太赞! [视频链接].我们可以使用照片资源的 mediaSubtypes 属性验证资源库中的图像在捕捉时是否开启了 HDR,拍摄时是否使用了相机应用的全景模式.(http://www.macworld.com/article/2988585/apple-phone/how-to-get-started-with-3d-touch-live-photos-and-4k-video-on-the-iphone-6s.html)

    Paste_Image.png
  • Creation date
  • Location
  • Favorite 布尔值,用户是否标记资源为"收藏",我们平时浏览照片或视频,在下方点

    Photos FrameWork 续的更多相关文章

    1. iOS Photos.framework框架

      链接: iOS8.0 使用Photos.framework对相册的常用操作 iOS AssetsLibrary和Photos的使用总结: 权限及相册的获取 iOS 开发之照片框架详解 iOS Asse ...

    2. iOS8.0 使用Photos.framework对相册的常用操作

      转载自:http://blog.csdn.net/longitachi/article/details/50130957 1.判断相册访问权限 首先我们访问相册,肯定有需要判断是否有访问权限的时候,然 ...

    3. [iOS]坑爹的ALAsset(Assets Library Framework)

      Assets Library Framework 可以用来做iOS上的多选器,选照片视频啥的啦就不介绍了. 目前的项目有点类似dropbox,可以选择设备内的照片然后帮你上传文件,使用了Assets ...

    4. device framework(设备框架)

      Table A-1  Device frameworks Name First available Prefixes Description Accelerate.framework 4.0 cbla ...

    5. iOS 开发之照片框架详解之二 —— PhotoKit 详解(下)

      本文链接:http://kayosite.com/ios-development-and-detail-of-photo-framework-part-three.html 这里接着前文<iOS ...

    6. IOS开发基础知识--碎片30

      1:ios 相册操作 ALAssetsLibrary 知识点 a ALAssetsLibrary 实例为我们提供了获取相册(照片app)中的图片和视频的功能.在ios8 photos framewor ...

    7. 【Swift 2.1】共享文件操作小结(iOS 8 +)

      前言 适用于 iOS 8 + 本地共享文件列表 声明 欢迎转载,但请保留文章原始出处:) 博客园:http://www.cnblogs.com 农民伯伯: http://over140.cnblogs ...

    8. iOS权限问题

      判断相机权限: NSString *mediaType = AVMediaTypeVideo; AVAuthorizationStatus authStatus = [AVCaptureDevice ...

    9. PhotoKit框架介绍及使用

      PhotoKit 是一套比 AssetsLibrary 更新更完整也更高效的ios照片处理库,对资源的处理跟 AssetsLibrary 有很大的不同.下面简单介绍下PhotoKit的几个基本概念 P ...

    随机推荐

    1. shell脚本学习(五)

      1.统计文件的行数.单词数.字符数 1)行数: wc -l file cat file | wc -l 2)单词数 wc -w file cat file | wc -w 3)统计字符数 wc -c ...

    2. kettle 连接Hadoop 遇错

      kettle从windows中往hdfs中写文件

    3. 关于java的上转型对象

      1. 定义 如果B类是A类的子类或间接子类,当用B类创建对象b并将这个对象b的引用赋给A类对象a时,如: A a;a = new B();ORA a;B b = new B();a = b; 则称A类 ...

    4. python爬虫学习--防盗链

      一 首先要了解什么是盗链 盗链是指服务提供商自己不提供服务的内容,通过技术手段绕过其它有利益的最终用户界面(如广告),直接在自己的网站上向最终用户提供其它服务商的服务内容,骗取最终用户的浏览和点击率. ...

    5. PHP socket模拟POST请求

      <?php if (! function_exists ( 'socket_post' )) { function socket_post($url, $data, $referer = '') ...

    6. 新学的js精集

      逻辑运算符比较 逻辑与和逻辑或这两个逻辑运算符它不单单会输出布尔型数据 1.只要"||"前面为false,无论"||"后面是true还是false,结果都返回& ...

    7. log4j配置详解[http://www.iteye.com/topic/378077]

      log4j是一个非常强大的log记录软件,下面我们就来看看在项目中如何使log4j. 首先当然是得到log4j的jar档,推荐使用1.2.X版,下载地址: http://logging.apache. ...

    8. javaWeb知识的回顾

      16年7月毕业,现在工作也有3个多月了.一直是在做一些增删改查,技术上没有太大的突破,自己总结下原因,还是原理理解的不够透彻,地基没打好就盖不成高楼. 在51cto上找到了佟刚老师的视频,快进游览一遍 ...

    9. VS2008中Run-Time Check Failure #2 - Stack around the variable 'xxx' was corrupted 错误解决方法

      问题 : 在用VS2008写一段代码,算法都没有问题,但是调试的时候发现出了main之后就报 Stack around the variable 'xxx' was corrupted 的错误,后来发 ...

    10. 使用httperrequest,模拟发送及接收Json请求

      使用httpreques\Json-Handle\tcpdump\wireshark工具进行,抓取手机访问网络的包,分析request及response请求,通过httprequester来实现模拟发 ...