请帮我解决我的问题:
我可以使用 ALAssetsLibrary 为 iPhone 库中的所有图像/视频提供 URL 和元数据吗?我可以编辑/删除这些图像/视频吗?
请帮我解决我的问题:
我可以使用 ALAssetsLibrary 为 iPhone 库中的所有图像/视频提供 URL 和元数据吗?我可以编辑/删除这些图像/视频吗?
上面的代码遗漏了一些大括号,所以在下面解决
ALAssetsLibrary *al = [[ALAssetsLibrary alloc] init];
assets = [[NSMutableArray alloc] init];
[al enumerateGroupsWithTypes:ALAssetsGroupAll
usingBlock:^(ALAssetsGroup *group, BOOL *stop)
{
[group enumerateAssetsUsingBlock:^(ALAsset *asset, NSUInteger index, BOOL *stop)
{
if (asset)
{
NSLog(@"%@",asset);
NSLog(@".. do something with the asset");
}
}
];
}
failureBlock:^(NSError *error)
{
// User did not allow access to library
// .. handle error
}
] ;
在此处查看 ALAssetsLibrary 的文档。要访问所有照片和视频,您需要枚举照片库中的所有组(相册),然后枚举每个组中的所有照片和图像。您无法使用 API 删除资产。iOS 5 添加了额外的功能——尽管它仍处于 NDA 之下,无法在此处讨论——请查看 iOS5 的 beta 文档和 Apple 开发者论坛。
您的代码将需要执行以下操作:
ALAssetsLibrary *al = [[ALAssetsLibrary alloc] init];
[al enumerateGroupsWithTypes:ALAssetsGroupAll
usingBlock:^(ALAssetsGroup *group, BOOL *stop)
{
[group enumerateAssetsUsingBlock:^(ALAsset *asset, NSUInteger index, BOOL *stop)
{
if (asset)
{
.. do something with the asset
}
}
];
}
failureBlock:^(NSError *error)
{
// User did not allow access to library
.. handle error
}
];