2013-08-30 6 views
1

У нас есть живая игра в магазине приложений iOS, и в настоящее время я добавляю некоторую интеграцию в Facebook. Я пытаюсь проверить глубокую связь с запросами приложений, но сторона получателя не запускает мое локально созданное приложение; вместо этого он переходит на страницу приложения в хранилище приложений. Что мне нужно изменить (настройки приложения FB? Настройки сборки Xcode?), Чтобы заставить это работать? Я могу только предположить, что это возможно ...Facebook приложение для приложений iOS не запускает локально созданное приложение

EDIT: должен упомянуть, что я использую последний SDK (3.7.1), созданный против iOS 6.1.

EDIT 2: короткий взять скриншот и чернение кучи вещей, я опишу, как моя FB приложение конфигурация устанавливается:

В Settings -> Basic, у меня есть только данные, заполненные из Native iOS App , который включает в себя Bundle ID (который соответствует идентификатору Xcode, который создает приложение с), iPhone/iPad App Store ID (соответствует активному приложению в магазине), Facebook Login и Deep Linking оба включены, а URL Scheme Suffix пуст. Приложение также находится в Sandbox Mode. В Settings -> Permissions у меня есть publish_actionsUser & Friend Permissions) и publish_streamExtended Permissions). Я думаю, что все остальное - ваниль.

В проекте plist Bundle identifier такой же, как описано в настройках приложения FB. Единственное возможное несоответствие: FacebookAppID в plist не соответствует этому конкретному тестовому приложению Facebook, с которым я работаю ... Я не думаю, что это важно, но это стоит упомянуть.

Насколько на самом деле отправки запроса, код выглядит следующим образом:

[FBWebDialogs presentRequestsDialogModallyWithSession:nil 
               message:message 
               title:nil 
              parameters:nil 
               handler:^(FBWebDialogResult result, NSURL *resultURL, NSError *error) { 
                // handle response 
               }]; 

Я делаю это раньше также, чтобы решить, какие FB приложение для подключения к:

NSString *path = [[NSBundle mainBundle] pathForResource:@"Info" ofType:@"plist"]; 
    NSDictionary *dict = [NSDictionary dictionaryWithContentsOfFile:path]; 

#if GO_TO_TEST_APP 
    NSString *fbAppId = [dict objectForKey:@"TestFacebookAppID"]; 
#else 
    NSString *fbAppId = [dict objectForKey:@"FacebookAppID"]; 
#endif 

    NSAssert(fbAppId, @"Failed to get Facebook app id from plist file!"); 

    [FBSettings setDefaultAppID:fbAppId]; 

Опять же, запрос действительно отправляется правильно (хотя я вижу ту же проблему, что и в случае появления here), и я могу увидеть запрос на Facebook acct получателя; это просто перенаправление не подхватывает тот факт, что у меня есть приложение, уже установленное на устройстве (хотя и построено локально с Xcode).

+0

Я, вероятно, не одинок в том, что вы не знаете, что вас спрашивает. Использует ли механизм, который вы пытаетесь реализовать, объявив поддержку схемы URL-адреса fb и получая доступ к этому, а Facebook имеет некоторые Javascript fallback, который перенаправляется в хранилище приложений, если устройство не отвечает на этот вызов? – Tommy

+0

Почему бы вам не показать нам код/​​config? – coneybeare

+0

Добавлено больше информации ... надеюсь, что это поможет! – ntourte

ответ

0

Tommy выше справа; Мне нужно было настроить URL types -> Item 0 -> URL Schemes в файле Info.plist, чтобы включить схему FB для нового тестового приложения, к которому я пытаюсь подключиться (в форме fb<Facebook App ID>. У меня уже есть приложение для живого приложения FB, я просто не понял этот этап конфигурации существует.

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