问题标签 [alassetslibrary]

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 投票
0 回答
569 浏览

objective-c - 使用Objective-C在pdf中绘制照片

我很难弄清楚这一点,非常感谢一些帮助。

基本上,我正在尝试在用户按下按钮时生成一个 pdf 文档中存储在资产库中的照片。

我可以使用以下代码毫无问题地绘制包含在 pdf 中应用程序资源文件夹中的 .png 图像:

但是,我需要首先使用块将照片从资产库中取出。例如:

文件名作为 .jpg 文件成功打印到日志中。self.pdfImage.size.height 也打印到日志中,这告诉我它正在查找图像。

但是,在调用 drawInRect 方法时图像为 null 并引发错误:Invalid Context: 0x0.

0 投票
3 回答
5399 浏览

objective-c - 如何从下载的图像创建新的 ALAsset

我正在尝试开发一个应用程序,该应用程序将下载图像(从摄影站点)并为每个图像创建一个 ALAsset,然后将它们放在一个新的 ALAssetsGroup 下。

我能够创建一个新专辑 (ALAssetsGroup) 并从网站下载数据。但是我对如何创建新的 ALAsset 有点坚持。

我试过如下

但是,我得到了assetURL 和error 都为空的打印件。

如果有人可以建议我如何在相册中创建新资产,那就太好了

0 投票
1 回答
1879 浏览

ios - 当应用程序进入前台时,将 iOS 应用程序与 ALAssetsLibrary 同步的最佳方式

我的应用程序保留了 ALAssets 的缓存。用户可以将应用程序置于后台,然后使用照片应用程序或其他方式删除一些照片或视频。当我的应用程序在后台时,我没有从 ALAssetsLibrary 收到有关数据已更改的通知。当应用程序再次变为活动状态时,是否有最佳方法将我的应用程序状态与 ALAssetsLibrary 状态同步?

Upate:看起来我可以使用这种方法来迭代整个库,但这似乎是一种获取更改增量的低效方法。

如何使用 URL 检查 ALAsset 是否仍然存在

0 投票
2 回答
7682 浏览

iphone - 用相机拍摄的照片不包含任何 ALAsset 元数据

最奇怪的事情正在发生。我有一张操作表,用户可以选择用相机拍照或从相机胶卷中选择一张。在 UIImagePicker 从选择中返回后,我使用 ALAssetsLibrary 来确定照片中嵌入的 GPS 信息。从相机胶卷中选择一张照片效果很好,我可以检索 GPS 信息。但是,用相机拍照绝对没有 GPS 信息,事实上我根本没有元数据。有谁知道我在这里做错了什么?

下面的代码:

正如我所解释的,使用相机时会输出以下内容。

但是,如果我选择现有照片,或者退出应用程序,用相机拍摄一张新照片,然后返回应用程序并从相机胶卷中选择该照片,我会从 NSLog 获得以下输出。

PS - 我正在使用带有 ARC 的 xCode 4.3

0 投票
3 回答
8236 浏览

iphone - 从 iphone 照片库中获取照片并在表格视图中显示

我想在表格视图中显示照片库中的所有图像。我可以通过 assetsLibrary 访问所有图像,但无法在表格中显示它们。我没有收到任何错误,但仍然不知道发生了什么。

表格视图的数据源方法:

}

请帮助我做错了什么......

感谢帮助

0 投票
2 回答
1369 浏览

iphone - 如何使用 ALAssets 库获取视频的绝对路径?

它很简单,我怎样才能获得使用 ALAssets 库检索到的视频的绝对路径?我想使用 ASI 框架将此视频作为文件附件上传。

如果我使用 UIImagePickerViewController,它就可以工作。但这不再是一个选择。我也不想使用 NSData 或将视频复制粘贴到临时文件。需要智能解决方案?有人吗?

0 投票
1 回答
1387 浏览

iphone - 尽管对 ALAssetLibrary 进行了任何更改,是否有任何方法可以以一种可行的方式保存 ALAsset?

我之前问过一个类似的问题(没有回复),但我对这个问题了解得更多,所以我决定用一个新的来重新表述它。我希望这没问题。

本质上,我需要在我的应用程序中存储一些 ALAsset,特别是来自相机胶卷/照片库的照片。

如果用户退出应用程序,然后拍摄一些照片或删除一些照片,那么我存储的 ALAssets 将变得无效。

有没有办法解决?是否有任何来自 ALAssets 的数据可以存储,例如照片 ID、路径或任何东西,这些数据将在 ALAssetLibrary 重新索引自身时“存活”下来?

谢谢!

0 投票
2 回答
683 浏览

objective-c - IOS NSString 属性在引用类中始终为零

这是我的@interface def;

这是我的@implementation:

然后在 Thumbnail 类中名为 initWithAsset 的方法中:

并且,所以当 Thumbnail 分配类尝试引用 thumbnail.imageCacheKeyBase 时,讨厌的东西是 nil。我已经尝试了一百万种不同的方法来获取字符串变量作为缩略图的属性。我什至简单地尝试了 self.imageCacheKeyBase = @"dave"。努丁。我尝试过保留和保留保留(我知道这很愚蠢,但我正在尝试任何事情。我什至尝试简单地将属性设置为 char *。

我整天都在研究这个。

请帮忙。

0 投票
1 回答
1325 浏览

iphone - 加快从 ALAssetsLibrary 读取和填充 UITableView 的可能方法

现在,我正在使用 ALAssetsLibrary 从 ALAssetsGroupSavedPhotos 和 ALAssetsGroupLibrary 收集照片。将所有资产读入一个数组后,我填充我的 UITableView ([myTable reloadData]) 以显示照片。

我发现如果用户有很多照片,延迟就会增加。有什么办法可以加快速度吗?尽管相机胶卷或照片库中的照片数量很多,但默认的 UIIMagePicker 似乎根本没有延迟。有没有办法达到同样的速度?

谢谢!

0 投票
1 回答
333 浏览

ios - 在 CGCreateWithImageInRect 之后,ARC 没有释放原始资产?

高级摘要:我想用更高质量的版本替换相当低分辨率的 ALAsset 组图像[group posterImage],以便它们可以在屏幕上显示得更大。通常我会根据界面的需要加载它们,但是[ALAssetsGroup enumerateAssetsAtIndexes]非常慢。(我可以预加载比可见的 x 量更宽,并且可能仍然这样做,但这似乎比它的价值更麻烦,并且仍然受到响应缓慢的影响,尤其是在 iOS5 中)

我认为我可以做的是请求每个组中的第一个资产,然后对其进行缩放,存储结果。然而,即使考虑到更大尺寸的图像,我对正在发生的内存分配感到惊讶。使用 VM Tracker,我看到大量 CGImage 分配以及我正在创建的“映射文件”缩略图。我正在使用 ARC,所以我预计原始的大图像会丢失,但我的 VM Tracker 结果并没有显示出来。

如果我使用默认的posterImage实现,我的 Resident Mem ~= 30mb,Dirty Mem ~= 80mb 和 Virtual tops ~240mb(本身很大)。每个分配分析器的“实时”< 10mb。

如果我改用下面的代码,我会在加载 150 个图像中的第 80 个图像时崩溃。那时我的 Resident Mem > 480mb,Dirty Mem > 420mb 和 Virtual 高达 750mb。显然这是站不住脚的。

这是我在 NSOperationQueue 内部使用的代码,用于获取每个组的第一张图像以用作高分辨率海报图像。

我是在上面做错了什么,还是我只是加载所有图像不聪明?我想得越多,我就越认为加载可见图像窗口加上它周围的缓冲区是要走的路,但我想了解更多关于我可能在上面的代码中做错了什么。谢谢!