2015-10-06 2 views
2

Когда я пытаюсь опубликовать в facebook в своем приложении, я получаю сообщение об ошибке: Пожалуйста, войдите в систему Вам необходимо войти в приложение Facebook, чтобы опубликовать эту фотографию.Публикация на Facebook с использованием SLComposeViewController

Я вошел в приложение Facebook, а также выполнил вход через настройки.

Я тестировал размещение на симуляторе, и он отлично работает. Когда я тестирую свое устройство, возникает проблема.

Я прочитал несколько других сообщений по этому вопросу. Сообщалось, что это уже было сообщено в Facebook.

Мне было просто интересно, работают ли другие люди в facebook, и если я могу сделать что-нибудь особенное, чтобы исправить мою проблему.

if ([SLComposeViewController isAvailableForServiceType:SLServiceTypeFacebook]){ 

    //Present twiter message box 
    SLComposeViewController *facebook = [[SLComposeViewController alloc] init]; 
    facebook = [SLComposeViewController composeViewControllerForServiceType:SLServiceTypeFacebook]; 

    //set the initial text for tweet 
    [facebook setInitialText:defaultPost]; 
    [facebook addURL:[NSURL URLWithString:@"http://bit.do/flappyghost"]]; 
    [facebook addImage:[UIImage imageNamed:@"appIcon.png"]]; 

    //present viewcontroller 
    [self presentViewController:facebook animated:YES completion:nil]; 

} else { 

    //handle the error if twitter is not available 
    UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Error" message:@"No Facebook Account is set up on this device!" delegate:nil cancelButtonTitle:@"Ok" otherButtonTitles:nil]; 

    [alert show]; 

} 

ответ

0

Я не совсем знаю, этот вопрос здесь, но при добавлении обработчика завершения получил это работает для меня:

SLComposeViewController *facebook = [SLComposeViewController composeViewControllerForServiceType:SLServiceTypeFacebook]; 
[facebook setInitialText:@"Lorem Ipsum"]; 
[facebook addURL:[NSURL URLWithString:@"http://stackoverflow.com"]]; 
[facebook setCompletionHandler:^(SLComposeViewControllerResult result) { 
    switch (result) { 
     case SLComposeViewControllerResultCancelled: 
      NSLog(@"Post Canceled"); 
      break; 
     case SLComposeViewControllerResultDone: 
      NSLog(@"Post Sucessful"); 
      break; 
     default: 
      break; 
    } 
}]; 
[self presentViewController:facebook animated:YES completion:nil]; 
Смежные вопросы