Ios ALAsset和PHAsset的区别是什么?

Ios ALAsset和PHAsset的区别是什么?,ios,alasset,phasset,Ios,Alasset,Phasset,今天早上我一直对PHAsset很好奇。我上个月经常和阿拉塞特打交道。我从苹果网站下载了一个iOS项目,该项目使用ALAsset制作了一个简单的类似iOS照片的应用程序,并对其进行了修改,添加了更多功能,使之成为类似iOS照片的应用程序。然后我的老板处理了我的项目,并告诉整个办公室我应该接受培训,他必须重新编写整个项目,因为我的代码大多已经过时(可能是因为使用了ALAsset?)。我的老板在iOS方面非常出色,我看到了他的代码,他正在使用PHAsset 那么ALAsset和PHAsset之间有什么

今天早上我一直对
PHAsset
很好奇。我上个月经常和阿拉塞特打交道。我从苹果网站下载了一个iOS项目,该项目使用
ALAsset
制作了一个简单的类似iOS照片的应用程序,并对其进行了修改,添加了更多功能,使之成为类似iOS照片的应用程序。然后我的老板处理了我的项目,并告诉整个办公室我应该接受培训,他必须重新编写整个项目,因为我的代码大多已经过时(可能是因为使用了
ALAsset
?)。我的老板在iOS方面非常出色,我看到了他的代码,他正在使用
PHAsset

那么
ALAsset
PHAsset
之间有什么区别呢?我在Apple/iOS论坛上也看到了一条帖子,
PHAsset
是新的,
ALAsset
是旧的

另外,我想知道这两者中哪一个更好,在向图像写入元数据时,哪一个更容易使用

我是iOS新手(2个月),我可以看到
PHAsset
ALAsset
都来自
NSObject


从两个类的参考文档中可以看出,它们来自两个不同的框架

PHAsset
来自较新的照片框架(在iOS 8.0中添加)

ALAsset
来自原始AssetLibrary框架

如果应用程序的部署目标是iOS 8.0或更新版本,则应使用更新的框架。仅当您的应用程序需要支持iOS 7或更早版本时,才使用旧版AssetLibrary框架

在这种情况下,哪个更容易的问题无关紧要。如果可能,请使用较新的。苹果一直鼓励使用最新的框架、库、操作系统、硬件等


您还将注意到,整个AssetLibrary框架已被弃用。这意味着它已经过时了。它仍然可以使用,但不鼓励使用新的库。

是!!!非常感谢您的澄清。:)现在我知道为什么我的老板说我的代码过时了。我喜欢这个问题附带一个小故事。谢谢。)当我发布这个问题时,我还是个新手:)我以前从未受过训练。