我正在尝试通过 ALAssetsLibrary 访问 iPhone 的相册照片图像。我可以通过以下代码访问所有相册并获取模拟器上每个图像的资源 URL:
- (void)viewDidLoad
{
[super viewDidLoad];
void (^assetEnumerator)(struct ALAsset *, NSUInteger, BOOL *) = ^(ALAsset *result, NSUInteger index, BOOL *stop) {
if(result != NULL) {
NSLog(@"See Asset: %@", result);
// assets is a NSMutableArray..
[assets addObject:result];
// Here storing the asset's image URL's in NSMutablearray urlStoreArr
NSURL *url = [[result defaultRepresentation] url];
[urlStoreArr addObject:url];
}
};
void (^assetGroupEnumerator)(struct ALAssetsGroup *, BOOL *) = ^(ALAssetsGroup *group, BOOL *stop)
{
if(group != nil) {
[group enumerateAssetsUsingBlock:assetEnumerator];
}
[self.activity stopAnimating];
[self.activity setHidden:YES];
};
assets = [[NSMutableArray alloc] init];
library = [[ALAssetsLibrary alloc] init];
[library enumerateGroupsWithTypes:ALAssetsGroupAlbum usingBlock:assetGroupEnumerator failureBlock: ^(NSError *error) {
NSLog(@"Failure");
}];
urlStoreArr = [[NSMutableArray alloc] init];
}
-(void) GetURLImages
{
for (int i=0; i<[urlStoreArr count]; i++)
{
// To get the each image URL here...
NSString *str = [urlStoreArr objectAtIndex:i];
NSLog(@"str: %@",str);
}
}
它在 iOS 4.0 模拟器上按预期工作,即获取所有图像 URL(例如:assets-library://asset/asset.JPG?id=1000000002&ext=JPG
)。但它不会检索 iPod 4.1 设备上的图像 URL。这里可能有什么问题?有人可以帮我修复一下,以便代码也可以在 iPod 上运行吗?我完全困惑了。
谢谢!
最佳答案
尝试我在评论或以下内容中提到的内容
library enumerateGroupsWithTypes:ALAssetsGroupSavedPhotos
这还取决于您想要什么照片。
关于iphone - ALAssetsLibrary 无法检索物理 iOS 4.1 iPod 设备中的图像 URL?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5462592/