2011-03-26 33 views
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得到了我的服务器的图像。有人请告诉我如何编程它发送图像到使用这种情况下的服务器?

谢谢!

回答

0

你可以使用下面的SO邮政编码上传图片到服务器。

How can I upload a photo to a server with the iPhone?

upload image from iphone to the server folder

+0

非常感谢Jhaliya!第二个链接帮助很多。我还有一个额外的问题,如果我想上传从ALAsset URL路径获得的视频文件,该怎么办? – Getsy 2011-03-26 14:35:37

+0

很高兴听到它的帮助你:你需要遵循相同的过程,除了你的NSData将保存视频数据,而不是图像... – Jhaliya 2011-03-26 14:43:47

+0

不幸的是,我无法使用我在iOS 4.1上的实际查询中提到的ALAssetsLibrary代码获取图像URL设备,不知道为什么?它在iOS 4.0模拟器上正常工作。如果有人知道为什么它不能在物理设备上工作,请告诉我我该怎么办? – Getsy 2011-03-28 16:19:33