1
我试图通过ALAssetsLibrary访问iPhone的相册照片图像并将图像上传(发送)到我的服务器。我是成功的访问相册,让每个图像的URL资产,通过下面的代码:将ALAsset 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 addObject:result];
// Here storing the asset's image URL's in NSMutable array 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) UploadImagesToServer
{
for (int i=0; i<[urlStoreArr count]; i++)
{
// To get the each image URL here...
NSString *str = [urlStoreArr objectAtIndex:i];
NSLog(@"str: %@",str);
// Need to upload the images to my server..
}
}
我要上传这是我从装置资产的URL得到了我的服务器的图像。有人请告诉我如何编程它发送图像到使用这种情况下的服务器?
谢谢!
非常感谢Jhaliya!第二个链接帮助很多。我还有一个额外的问题,如果我想上传从ALAsset URL路径获得的视频文件,该怎么办? – Getsy 2011-03-26 14:35:37
很高兴听到它的帮助你:你需要遵循相同的过程,除了你的NSData将保存视频数据,而不是图像... – Jhaliya 2011-03-26 14:43:47
不幸的是,我无法使用我在iOS 4.1上的实际查询中提到的ALAssetsLibrary代码获取图像URL设备,不知道为什么?它在iOS 4.0模拟器上正常工作。如果有人知道为什么它不能在物理设备上工作,请告诉我我该怎么办? – Getsy 2011-03-28 16:19:33