2010-10-21 41 views
0

我需要上傳Fa​​cebook上的照片。但這似乎是不可能的。我總是有相同的崩潰控制檯[UIImage的dataUsingEncoding:] 我讓我的圖片的方式:Facebook的photos.upload崩潰在Facebook Api

- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info{ 
[self dismissModalViewControllerAnimated:YES]; 
if ([mediaType isEqualToString:@"public.image"]){   
    _photoImage1 = [[info objectForKey:@"UIImagePickerControllerOriginalImage"] retain];  

所有需要的權限後:

-(void)uploadPhotoToFacebook { 
NSMutableDictionary *args = [[[NSMutableDictionary alloc] init] autorelease]; 
[args setObject:_photoImage1 forKey:@"image"]; 
[args setObject:@"hello test picture" forKey:@"caption"];  
FBRequest *uploadPhotoRequest = [FBRequest requestWithDelegate:self]; 
[uploadPhotoRequest call:@"photos.upload" params:args]; 

它墜毀在FBRequest這種方法之後。 m

- (void)utfAppendBody:(NSMutableData*)body data:(NSString*)data { 
[body appendData:[data dataUsingEncoding:NSUTF8StringEncoding]]; 

} 在此先感謝。

+0

任何崩潰的消息? – Vladimir 2010-10-21 17:58:16

+0

是的。有一個[UIImage dataUsingEncoding:]:無法識別的選擇器發送到實例0x5a71800我試圖使用NSData而不是UIImage,但我有另一個消息[NSData datausingEncoding:]。非常感謝。 – 2010-10-22 09:13:16

回答

2

嘗試在控制檯添加圖片作爲dataParam

NSMutableDictionary *params = [[[NSMutableDictionary alloc] init] autorelease]; 
[params setObject:@"NAME" forKey:@"caption"];  
[[FBRequest requestWithDelegate:self] call:@"facebook.photos.upload" params:params dataParam:UIImagePNGRepresentation(_photoImage1)]; 
1

thats't工作適合我

NSMutableDictionary *params = [[[NSMutableDictionary alloc] init] autorelease]; 
[params setObject:@"NAME" forKey:@"caption"];  
[[FBRequest requestWithDelegate:self] call:@"facebook.photos.upload" params:params dataParam:UIImagePNGRepresentation(_photoImage1)];