2014-12-10 2 views
2

В моем приложении мне нужно использовать «Диалог каналов» для случаев, когда приложение Facebook не установлено в телефоне пользователей. Несмотря на то, что я могу обмениваться контентом с помощью метода FBDialogs canPresentShareDialogWithParams, я не могу работать с диалогом каналов. Диалог не открывается, и обработчик не получает вызов.FBWebDialogs presentFeedDialogModallyWithSession не отображается без приложения Facebook

[FBWebDialogs presentFeedDialogModallyWithSession:nil parameters:params handler:^(FBWebDialogResult result, NSURL *resultURL, NSError *error) { 
       if (error) { 
        NSLog(@"Error publishing story: %@", error.description); 
       } else { 
        if (result == FBWebDialogResultDialogNotCompleted) { 
         NSLog(@"User cancelled."); 
        } else { 
         NSDictionary *urlParams = [self parseURLParams:[resultURL query]]; 

         if (![urlParams valueForKey:@"post_id"]) { 
          NSLog(@"User cancelled."); 

         } else { 
          NSString *result = [NSString stringWithFormat: @"Posted story, id: %@", [urlParams valueForKey:@"post_id"]]; 
          // do stuff 
          NSLog(@"result %@", result); 
         } 
        } 
       } 
      }]; 

Тест на iOS7 и iOS8, и в результате это всегда одно и то же.

+0

У меня была аналогичная проблема, это были параметры. Если вы добавите код params, я могу вам помочь. –

+0

Это мои параметры: 'params.link = shareUrl params.name = subj ?? summaryToDisplay params.caption = nil params.picture = pictureUrl params.linkDescription' Где первые 2 являются NSURL –

ответ

0

Что сработало для меня, так это изменение полей изображения и ссылки с типа NSURL на NSString. В Facebook docs есть хороший пример того, как это сделать:

NSMutableDictionary *params = 
[NSMutableDictionary dictionaryWithObjectsAndKeys: 
@"Facebook SDK for iOS", @"name", 
@"Build great social apps and get more installs.", @"caption", 
@"The Facebook SDK for iOS makes it easier and faster to develop Facebook integrated iOS apps.", @"description", 
@"https://developers.facebook.com/ios", @"link", 
@"https://raw.github.com/fbsamples/ios-3.x-howtos/master/Images/iossdk_logo.png", @"picture", 
nil]; 

Я считаю, что это будет исправить вашу проблему.

Смежные вопросы