2013-06-16 1 views
34

Я хочу иметь Facebook app native dialog login (https://developers.facebook.com/docs/technical-guides/iossdk/login/#fbnative).FBSDKLog: нельзя использовать приложение Facebook или Safari для авторизации, fb **** не зарегистрирован как URL-схема

В консоли, я получаю следующее сообщение при нажатии на FBLoginView:

FBSDKLog: Cannot use the Facebook app or Safari to authorize, fb**** is not registered as a URL Scheme 

Но я сделал именно так, как здесь: Failing to open active session after updating Facebook SDK to 3.5

ответ

62

В myapp-Info.plist, я переименовал URL Schemes ключ к CFBundleURLSchemes:

Перед:

<key>CFBundleURLTypes</key> 
<array> 
    <dict> 
     <key>URL Schemes</key> 
     <array> 
      <string>fb***</string> 
     </array> 
    </dict> 
</array> 

После:

<key>CFBundleURLTypes</key> 
<array> 
    <dict> 
     <key>CFBundleURLSchemes</key> 
     <array> 
      <string>fb***</string> 
     </array> 
    </dict> 
</array> 

Разница не видна в XCode, потому что CFBundleURLSchemes является совмещенным с URL Schemes.

Как следствие, вы должны отредактировать myapp-Info.plist вручную.

+1

Это, кажется, такая странная проблема. – geekchic

+3

+1 Решение работало и для меня. – subv3rsion

+2

Работал для меня, но мне пришлось изменить URL-адрес на CFBundleUrlTypes, а также –

0

Попробуйте FBConnect

вы можете найти кап как здесь:

http://mobisoftinfotech.com/iphone-fbconnect-facebook-connect-tutorial/

+0

Это именно то, что у меня уже есть: http://www.mobisoftinfotech.com/wp-content/uploads/2010/02/Picture-111.png, то есть наложение UIWebView. Я хочу, чтобы iOS выполнял логин: https://fbcdn-dragon-a.akamaihd.net/hphotos-ak-prn1/851581_643828892298304_190220435_n.png –

2

Я исправил эту проблему путем удаления пространства я имел между фб и мой идентификатор приложения в info.plist

1

Я была такая же проблема (Facebook SDK 3.5.1)

Моя схема URL для Facebook было по пункту 1. Исправлена ​​проблема, перемещая его к пункту 0.

4

Найдено решение для нас:

Мы две схемы URL определены. Один для нашего приложения «ourapp: //» и один для facebook «fb123456789».

Как оказалось, URL-адрес Facebook должен быть номером один.

+0

Подтверждено работать. – eladleb

29

Проблема заключается в файле plist, так как ему нужны разные настройки, после чего он был опубликован в официальном Facebook-видео и статьях для Facebook SDK 3.5.x.

Если вы хотите использовать 2 или более приложений с одним и тем же Facebook AppID, что полезно для всех видов деятельности, сообщения будут накапливаться под одним и тем же видом Facebook для всех версий, таких как premium или lite, но в этом случае вы должны каким-то образом решить, что Facebook перезвонит (схема URL) правильное приложение, откуда пришел пользователь, и пользователь может продолжить использовать наше приложение, когда закончите с деятельностью Facebook, например, должность и т. д.

Таким образом, мы должны использовать типы URL и URL схем в Xcode и в настройках разработчиков Facebook, как вы можете видеть на рисунках ниже:

UPDATE 2015

У меня есть обновил скриншоты, чтобы отразить новые настройки Facebook и Xcode:

Xcode 6

Как вы можете видеть, вы должны использовать FacebookAppID с прикрепленным суффиксом URL-схемы и тем же именем FacebookDisplayName BUT, вы должны использовать префикс «fb» в строке URL-адресов -> Схемы URL-адресов и использовать имя FacebookDisplayName в строка идентификатора, см. ниже. Это обеспечит, что Facebook вернет правильное приложение (Lite или премиум в этом примере), но все сообщения и т. Д. Отправятся в одно приложение Facebook.

enter image description here

Facebook

iPhone магазин ID для премиум-версию, как мы хотели бы, чтобы маршрутизировать пользователю платной версии!

enter image description here

+0

Спасибо BootMaker –

+0

@Milan Добро пожаловать :) – BootMaker

11

В моем приложении, ошибка была вызвана тем, что в случае ключей собственности неверен.

Они должны быть:

типов URL (в нижнем регистре T)

URL Схема (прописная S)

+0

OMG, спасибо, я собирался сходить с ума, пытаясь понять это, у меня были строчные буквы для схем! –

0

Моего вопрос заключается в том, что у меня был FBAppID вставили в 3й раз, и это было видно только проверка файла .plist с помощью текстового редактора.

0

Я использовал Facebook SDK v.3 или более, я нашел проблему с открытым доступом в Facebook. когда я нажимаю кнопку «Вход», а затем не открываю всплывающее окно для входа пользователя.

Итак, ниже решение этой проблемы:

При изменении системного времени Дата & от предыдущего до текущего и снова проверить приложение, и это работает прекрасно. поэтому, пожалуйста, проверьте дату устройства & Время.

0

У меня такая же проблема. Итак, я стараюсь пункт 0 экземпляра: fb1234567890 к пункту 1: fb1234567890

массива URL схемы есть 2 пункта: пункт 0, пункт 1 Это нормально. надеюсь, это будет полезно для вас!