问题标签 [photostream]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
4497 浏览

ios - 如何获取共享照片流 ALAsset 的 ALAssetRepresentation?

当我尝试从照片流中访问图片时,有时该[asset defaultRepresentation]方法返回 nil。

根据文档,如果资产(尚未)在本地可用,则可能会发生这种情况。

对于来自共享照片流但在本地尚不可用的资产,此方法返回 nil。如果资产将来可用,则会发布 ALAssetsLibraryChangedNotification 通知。

一旦我在 Photos.app 中查看照片,它也可用于我的应用程序,但显然我想让我的应用程序触发“本地下载”事件。

我查看了 Apple 的MyImagePicker示例代码,但它表现出相同的行为(只有缩略图可用)

如何使资产在本地可用?

编辑:由于 Apple 在 iOS8 中引入了Photos.framework,并且在 iOS9 中不推荐使用 ALAssets,这可能永远不会得到修复。

0 投票
0 回答
79 浏览

objective-c - 从 OS X 上的 Photo Stream 读取图像?

在 iPhone 上使用 Photo Stream 中的图像非常简单和正常。我想知道是否有办法从 OS X 上的 Photo Stream 读取图像?

经过一番谷歌搜索,我发现图像实际上是同步的~/Library/Application Support/iLifeAssetManagement/assets,我必须在这里解析文件吗?

非常感谢!

0 投票
0 回答
35 浏览

ios - 如何从照片流中请求一张照片以通过资产库下载?

该文档指出:

对于来自共享照片流但在本地尚不可用的资产,此方法返回 nil。如果资产将来可用,则会发布 ALAssetsLibraryChangedNotification 通知。

如何请求下载共享照片?我最初认为用户必须去照片的应用程序才能实现它,但在 Telegram.app 他们能够实现它,因此第三方应用程序是可能的。有谁知道怎么做?

0 投票
1 回答
109 浏览

javascript - 如何添加我的照片流?

我想将我的照片流添加到我的网站我已经尝试了多个代码

https://gist.github.com/willdurand/5705453(找不到集合id)

假设我需要找到 id 才能将公共提要添加到我的照片流中?

编辑这似乎可行,但会引发 403。

这项工作只需要将图像设置为公开。

0 投票
2 回答
972 浏览

ios - ALAssetsLibrary enumerateGroupsWithTypes:ALAssetsGroupPhotoStream 不包含组中的视频

过滤视频时,照片流组返回的计数为 0。这是要重现的代码:

“我的照片流”和共享流都会发生这种情况。请注意,照片应用确实会显示视频。另请注意,过滤照片(使用上面的 [ALAssetsFilter allPhotos])确实有效。我已经在 iOS 7.1.2 和 8.1 上复制了这个。

有没有其他人看到这个或找到解决方法?谢谢!

更新(2014 年 10 月 29 日):我的照片流不支持视频,只有共享流支持。

0 投票
5 回答
11668 浏览

ios - 在 iOS8 上使用 UIImagePicker 结果 URL 和 PHAsset 从“我的照片流”加载图像

我已将应用程序从 ios7 更新到 ios8,并且努力让 UIImagePicker 工作以从“我的照片流”类别的照片中加载图片。UIImagePicker 实现是标准的,我使用以下命令检索所选照片的​​ URL:

然后我使用新的 IOS8 API 来加载这张照片:

这行不通。result.count 为零,没有找到图像。URL 的 UUID 与我从“时刻”或“相机胶卷”中选择照片的 UUID 不同,但看起来格式正确。(手机运行的是 8.1):

网址 NSURL * @"assets-library://asset/asset.JPG?id=4522DBD1-862C-42BE-AF7C-0D6C76CA7590&ext=JPG"

任何人都有一些代码可以从“我的照片流”中加载照片,或者有一种方法可以为 UIImagePicker 显示禁用它?

使用较旧的 ALAssetsLibrary assetForURL API 也无法加载这些图像。

0 投票
1 回答
308 浏览

ios - 强制保存的图像与 iCloud 照片流同步

我有一个定期拍摄图像的应用程序,我希望在拍摄图像后立即将它们上传到 iCloud 照片流。

似乎需要满足某些条件才能使其起作用。它似乎只在运行 iOS 8 时工作,设备连接到无线,并且通过使用 UIImagePickerController 来拍照(而不是 AVCapture)至少一次。似乎 UIImagePickerController 在出现时会改变一些系统设置,从而允许随后将图像自动上传到 iCloud 照片流。如果我只使用 AVCapture 来拍照,它将无法正常工作。我已确认在 iCloud 设置中启用了“上传到我的照片流”,并且存在活动的无线连接。

这是用于保存从 UIImagePickerController 获取的图像的方法:

在装有 iOS 8 的 iPad 上运行时,以下是我在设备系统日志中看到的条目:

在装有 iOS 9.1 的 iPhone 上运行时,我有类似的日志条目,除了我有关于缓存服务器的其他警告/错误消息以粗体显示:

在 iOS 9 的这种情况下,当我的应用程序处于活动状态时,图像不会上传,只有在应用程序进入后台时才会上传。

我怀疑问题是由于 1. 某些系统设置仅在 iOS8 中通过 UIImagePickerController 的呈现激活,或者 2. 日志条目所建议的 iOS 9 中缓存服务器的一些问题。

有人知道发生了什么吗?任何想法将不胜感激!谢谢!

0 投票
1 回答
203 浏览

ios - PHAssetRequestChange deleteAsset 也不会删除照片流资产

在我的应用程序中,用户可以用相机拍照,它会通过以下方式将图像保存到相机胶卷:

我从中检索 PHAsset 并对其进行处理。稍后,系统会提示用户决定是否要删除他们拍摄的照片。使用 PHAsset 上的句柄,我使用以下方法删除 PHAsset:

我收到提示“允许 'MYAPP' 删除这张照片?”。如果您按删除,它会从相机胶卷中删除它。

但是,如果用户启用了照片流,则照片将保留在照片流中。我们还能做些什么来删除照片流图像吗?

0 投票
0 回答
265 浏览

ios - iOS 13 - PHImageManager 为我的照片流照片返回一个缩小的图像

从 iOS 13 开始,我无法使用 PhotoKit 在“我的照片流”中获取原始分辨率版本的照片。在过去的几个月里,我收到了一些用户的投诉,所以这与我自己的设备或帐户无关。以下代码总是检索非常小的图像(例如 360 x 480)。

控制台:
资产大小:1536 x 2048
2020-02-02 08:18:44.452620-0700 photostreamphoto[7370:2576203] [ImageManager] [RM]: 1-1-0 无法解码图像
2020-02-02 08:18 :44.468675-0700 photostreamphoto[7370:2576203] [ImageManager] [RM]:1-1-0 无法解码图像
2020-02-02 08:18:44.479691-0700 photostreamphoto[7370:2576203] [ImageManager] [RM] : 1-1-0 无法解码图像
图像大小: 360.0 x 480.0
2020-02-02 08:18:44.485069-0700 photostreamphoto[7370:2576203] [ImageManager] [RM]: 1-2-0 无法加载图像来自 URL:file:///var/mobile/Media/PhotoStreamsData/267078714/100APPLE/IMG_0001.JPG
2020-02-02 08:18:44.490447-0700 photostreamphoto[7370:2576203] [ImageManager] [RM]: 1-2-0 无法从 URL 加载图像:file:///var/mobile/Media/PhotoStreamsData/ 267078714/100APPLE/IMG_0001.JPG
2020-02-02 08:18:44.501745-0700 photostreamphoto[7370:2576203] [ImageManager] [RM]: 1-2-0 无法从 URL 加载图像:file:///var /mobile/Media/PhotoStreamsData/267078714/100APPLE/IMG_0001.JPG
图像尺寸:360.0 x 480.0

我已经尝试了 PHRequestOptions 中所有可能的选项组合。请注意,如果我设置opts.version = .original它会给我一个零图像和零图像数据。

我还尝试asset.requestContentEditingInput(...)尝试直接访问图像 URL:

安慰:

2020-02-02 08:26:49.641787-0700 photostreamphoto[7416:2578984] [PhotoKit] 资产资源文件 URL 无法访问,可能已被修剪,将尝试可用性更改请求

有趣的是,UIImagePicker 确实检索了原始分辨率图像(例如 1536 x 2048)。照片应用程序还显示全分辨率图像。我希望我知道他们在使用什么黑魔法。

如果有人知道解决方法,请分享。

0 投票
0 回答
7 浏览

ios - PHPickerViewController 不显示照片流

我们使用PHPickerViewController允许用户选择照片以导入我们的应用程序。最近有用户说他们在选择器中看不到他们的照片流。

有没有办法让 Photo Stream 相册显示在 中PHPickerViewController