presentShareDialogWithParams отправляется на стену FB, но результаты обработчика обратного вызова говорят об ошибке

У меня есть приложение iOS с SDK для Facebook. Я использую первый блок примера кода на https://developers.facebook.com/docs/ios/ios-sdk-games/feed/ почти дословно для обмена информацией из моего приложения в FB. Я только изменил строки и URL-адреса из кода примера, чтобы соответствовать моему приложению.

Хотя сообщения из моего приложения появляются на моей стене Facebook, и все выглядит хорошо, результаты FBAppCall в моем NSLog говорят:

Ошибка публикации story = Ошибка Домен = com.facebook.sdk Код = 11 «Пользователь перешел от приложения Facebook до завершения этого AppCall. Этот AppCall теперь отменен и его нужно повторить, чтобы получить успешное завершение

Я пытаюсь использовать результаты FBAppCall, чтобы после успешной отправки я мог инициировать другой сетевой вызов для моего бэкэнд, где я могу записывать данные о событии. Как ни странно, пока я вижу столбы на моей стене, последнее условие «Публикация публикации» не происходит, условие error .

Вот фактический FBAppCall, который снова появляется прямо из https://developers.facebook.com/docs/ios/ios-sdk-games/feed/

 [FBDialogs presentShareDialogWithParams:shareParams clientState:nil handler:^(FBAppCall *call, NSDictionary *results, NSError *error) { if(error) { NSLog(@"Error publishing story = %@.", error); NSLog(@"result = %@.", results); } else if (results[@"completionGesture"] && [results[@"completionGesture"] isEqualToString:@"cancel"]) { NSLog(@"User canceled story publishing."); } else { NSLog(@"Story published."); self.shareMethod = @"Facebook"; [self recordSharingDataAtParse:self.shareMethod]; } }]; 

Последнее замечание: я не думаю, что это может быть причиной, но мое приложение FB сейчас находится в режиме «песочницы».

Обновление: я нашел этот аналогичный пост FBDialogs presentShareDialogWithParams успешно, но ошибка возвращается с рекомендуемым разрешением отключения «Install Insights» и «Mobile SDK Insights» в консоли приложения. К сожалению, это не решило мою проблему.

Благодарю.

Я не уверен в Error Domain=com.facebook.sdk Code=11 но вы должны проверить настройки своего приложения на facebook, а некоторые Migrations отключить последние три варианта (июль 2012 г., август 2012 г.).

🙂

Когда вы столкнетесь с этой ошибкой, вам нужно будет обработать ответ от вашего делегата приложения.

 - (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation { return [FBAppCall handleOpenURL:url sourceApplication:sourceApplication fallbackHandler:^(FBAppCall *call) { if (call.appLinkData && call.appLinkData.targetURL) { // Invoke pending callback. } }]; } 

Когда пользователь завершит действие, вызов будет содержать всю информацию из сообщения:

 <FBAppCall: 0x147274f0, ID: 62FA2382-B557-45D5-8ACA-FE4C7516F861 dialogData: <FBDialogsData: 0x14727490, method: share arguments: { dataFailuresFatal = 0; description = "After years of captivity, Angry Goat is finally free!"; link = "http://appstore.com/berrycrush"; name = "Unlocked Angry Goat"; picture = "http://example.com/angry-goat.png"; } results: { completionGesture = post; didComplete = 1; }> > 
  • IOS теряет FBSession при закрытии приложения
  • Как управлять учетными записями производства и разработки с помощью Facebook iOS SDK
  • Файл facebookSDK 3.1.1 не найден
  • Выбор «Не сейчас» при приеме приложения вызывает «com.facebook.sdk error2»
  • Facebook iOS SDK, исключение из FBSession, *** Ошибка утверждения в -
  • Выход из iOS SDK для Facebook
  • Как оставаться в системе с iOS Facebook SDK 2.4
  • Swift - использование собственной кнопки входа в Facebook с функциональностью анализа
  • fbDidLogin никогда не вызывал (facebook-ios-sdk)
  • Могу ли я разместить на стене страницы приложение iOS?
  • FBSession.activeSession.isOpen возвращает NO, даже если пользователь вошел в систему
  • Давайте будем гением компьютера.