gpt4 book ai didi

Objective-C/ALAssetslibrary - 如何检索 Assets 的正确路径

转载 作者:搜寻专家 更新时间:2023-10-30 19:47:46 25 4
gpt4 key购买 nike

我已经实现了一个简单的方法来查找设备内图像的路径。实际上我正在使用 iPhone 模拟器。这是我正在使用的代码:

[library enumerateGroupsWithTypes:ALAssetsGroupAll usingBlock:^(ALAssetsGroup *group, BOOL *stop) {
if (group) {
[group setAssetsFilter:[ALAssetsFilter allPhotos]];
[group enumerateAssetsUsingBlock:^(ALAsset *asset, NSUInteger index, BOOL *stop){
if (asset){
NSString *description = [asset description];
NSRange first = [description rangeOfString:@"URLs:"];
NSRange second = [description rangeOfString:@"?id="];
NSString *path = [description substringWithRange: NSMakeRange(first.location + first.length, second.location - (first.location + first.length))];
[idList addObject:path];
}
}];
}
} failureBlock:^(NSError *error) {
NSLog(@"error enumerating AssetLibrary groups %@\n", error);
}
];
});

在这一点上,如果我记录我收到的图像的路径:“assets-library://asset/asset.JPG”,据我所知,这不是具有准确位置的整个路径的形象。你还好吗?那么,如何获取资源的完整路径呢?

谢谢

最佳答案

您没有从 Assets 描述中正确检索 URL。

考虑使用 ALAsset valueForProperty: 来简化您的任务。

NSURL *url = [asset valueForProperty:ALAssetPropertyAssetURL];

您稍后可以使用 URL 通过使用 ALAssetsLibrary assetForURL 从库中检索 Assets :

[library assetForURL:self.url resultBlock:^(ALAsset *asset) {

} failureBlock:^(NSError *error) {

}];

关于Objective-C/ALAssetslibrary - 如何检索 Assets 的正确路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18489261/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com