从iPhone代码访问相册

Gar*_*y J 7 iphone photo

像"图片地图"这样的iPhone应用程序访问iPhone相机相册中的所有照片并显示它们,而不显示图像选择器控件.

有谁知道这是怎么做的?

谢谢G

Syl*_*erb 6

这是一个老线程,但我会回答,因为我是编写和发布图片地图的人!

托马斯是对的,我正在访问DCIM文件夹来解析每个文件(从EXIF结构获取其位置并访问缩略图).

由于应用程序无权访问其沙箱之外的文件,Apple要求我从AppStore中删除该应用程序......无论如何,自iOS 4.0以来,应用程序无法再访问DCIM文件夹了!

我确实重写了应用程序以使用ALAsset类并以"Picture-Map"的名义再次发布它!源代码也可以在这里找到:https://github.com/sylverb/Picture-Map


Tho*_*ann 2

我相信我知道发生了什么事:

iPhone 上有两个独立的照片集:

  1. iPhoto 相册,从 Mac 上的 iPhoto 应用程序同步。
  2. 用 iPhone 相机拍摄的照片。

普通应用程序无法访问 iPhoto 相册(前提是我们这里讨论的不是越狱设备) - 应用程序只能请求用户手动逐张选择图片​​。

然而,相机拍摄的照片最终会与其他数据一起保存在所有应用程序之间共享的“DCIM”文件夹中。如果您使用 Mac 应用程序“iPhone Explorer”,您就可以看到所有这些(我确信 Windows 上也有类似的应用程序)。

因此,虽然我自己从未尝试过“Picture Map”,但我怀疑它只是访问此 DCIM 文件夹。

...

哦,等等...我刚刚使用 iPhone Explorer 查看了 iPad 的共享文件夹(/var/mobile/Media),发现那里不仅有 DCIM 文件夹,还有一个 Photos 文件夹,其中包含一个“照片数据库” ,就像在 Mac 上一样。哇,这很有趣......这可能意味着“Picture Map”实际上直接读取这个数据库文件。这是在 Mac 上完成的,我怀疑 iPhone 操作系统上的文件格式也没有太大不同。

这是否回答你的问题?