2011-02-02 5 views
0

В моем приложении для iPhone я хочу отправить текст, а также изображения в facebook.Как отправить текст и изображения с помощью API Facebook в iPhone SDK?

В настоящее время API facebook предполагает, что существуют отдельные пользовательские разрешения, которые позволяют нам это делать.

Есть ли выход, где я могу использовать оба API только в моем проекте?

Если да, то как мы можем это сделать?

Ссылки на любые статьи или учебники были бы очень полезны

Пожалуйста, помогите & Suggest.

Thanks

ответ

0

Я не уверен, что это возможно. Я разместил изображение со следующим решением:

NSMutableDictionary *params = [NSMutableDictionary dictionaryWithObjectsAndKeys: 
           takedPhoto, @"picture", 
           @"some text", @"message",    
           nil]; 


[facebook requestWithGraphPath:@"/me/photos" andParams:params 
       andHttpMethod:@"POST" andDelegate:self]; 

takedPhoto - UIImage. Но это только загрузка фотографий в фотоальбом (и одобрение, если вы разрешаете разрешения при входе в систему). Не знаю, как я могу опубликовать сообщение на стене с помощью этого загруженного изображения ... С уважением,

1

Да, вы можете это сделать.

Пожалуйста, обратите внимание на все методы, как показано ниже:

- (IBAction)uploadPhoto:(id)sender { 
    [self postOnFacebook]; 
} 

// Сообщение сообщения и фотографии на Facebook Функция

-(void)postOnFacebook 
{ 
NSString *strPostMessage = [self createMessageForPostOnFacebook:74.112 withLongitude:21.85]; 
//UIImage *img = [[UIImage alloc] initWithData:[NSData dataWithContentsOfURL:[NSURL URLWithString:objClsProductSearch.strProductImageURL]]]; 
//UIImage *img = [[UIImage alloc] initWithData:[NSData dataWithContentsOfURL:[NSURL URLWithString:@"http://www.facebook.com/images/devsite/iphone_connect_btn.jpg"]]]; 
UIImage *img = [[UIImage alloc] initWithData:[NSData dataWithContentsOfURL:[NSURL URLWithString:@"http://d1xzuxjlafny7l.cloudfront.net/wp-content/uploads/2011/08/HUDTutorial.jpg"]]]; 

NSMutableDictionary *params = [NSMutableDictionary dictionaryWithObjectsAndKeys: 
           strPostMessage,@"message",img, @"source", 
           nil]; 

[_facebook requestWithGraphPath:@"/me/photos" 
         andParams:params 
        andHttpMethod:@"POST" 
        andDelegate:self]; 

[img release]; 
} 

// Создать сообщение для размещения на Facebook

-(NSString *)createMessageForPostOnFacebook:(double)pfltLatitude withLongitude:(double)pfltLongitude 
{ 
//NSString *urlString = [NSString stringWithFormat:@"http://maps.google.com/maps/geo?q=%f,%f&output=csv",pfltLatitude, pfltLongitude]; 
//NSString *urlString = [NSString stringWithFormat:@"http://maps.google.com/maps/geo?q=%f,%f&output=csv",@"", @""]; 
//NSError* error; 
//NSString *locationString = [NSString stringWithContentsOfURL:[NSURL URLWithString:urlString] encoding:NSASCIIStringEncoding error:&error]; 
//NSArray *listItems = [locationString componentsSeparatedByString:@","]; 
NSString *strMessage = nil; 
/*if([[listItems objectAtIndex:0] isEqualToString:@"200"]) 
{ 
strMessage = [NSString stringWithFormat:@"I found a %@ using BH for iPhone \n Location : %@ \n Latitude : %f & Longitude : %f \n Product Rating : %d",objClsProductSearch.strCategoryname,[locationString substringFromIndex:6],appDelegate.dblLatitude,appDelegate.dblLongitude,btnTmp.tag]; 
}*/ 
strMessage = [NSString stringWithFormat:@"I found a %@ using BH for iPhone \n Location : %@ \n Latitude : %f & Longitude : %f \n Product Rating : %d", @"Cat Name", @"Location", 74.112, 21.85, 1]; 

return strMessage; 
} 

Надеюсь, вы добьетесь успеха, используя приведенный выше код.

Дайте мне знать, если у вас возникнут проблемы.

В делегате приложения вы можете посмотреть ниже методы, независимо от того, реализована она или нет.

- (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url { 
    //return [[controller facebook] handleOpenURL:url]; 
    //return [[objPage2ViewController facebook] handleOpenURL:url]; 
    return [[[self.navigationController topViewController] facebook] handleOpenURL:url]; 
} 

Приветствия