Facebook Connect для BlackBerry - PullRequest
       8

Facebook Connect для BlackBerry

5 голосов
/ 23 октября 2009

Я ищу решение, аналогичное iPhone Facebook Connect (https://github.com/facebook/facebook-ios-sdk) для платформы BlackBerry. По сути, мне нужно, чтобы мои пользователи проходили аутентификацию на Facebook из собственного приложения BlackBerry (то есть не из Интернета). мобильное приложение). Могу ли я использовать библиотеку, и если нет, то какой будет правильный подход для достижения этой цели?

Заранее спасибо!

Ответы [ 3 ]

4 голосов
/ 29 октября 2009

Варианты для BlackBerry:

3 голосов
/ 03 ноября 2009

Мне удалось пройти проверку подлинности Facebook Connect в моем приложении BB. После трёх дней, пока я ломал голову, я понял, что виновником является именно URL!

В основном это то, что вам нужно (если вы разрабатываете для платформы 4.5):

  1. Используя поле браузера, выполните POST для http://m.facebook.com/login.php (мобильная версия Facebook), передавая все необходимые аргументы в соответствии с аналогами приложения для настольных компьютеров (одна из проблем заключается в правильной генерации подписи).
  2. Как только пользователь успешно предоставит доступ, запишите URL-адрес экрана успеха. Вы получите свой auth_token.
  3. Выполните процедуру POST на сервере REST, чтобы получить ключ сеанса и секретный ключ с учетом полученного токена auth_token.
  4. Сохраните возвращенный сеансовый ключ и секрет, сохраните его, и все! Ваше приложение запущено и работает.

Я разрабатываю пользовательский объект LoginScreen и FacebookFacade, включающий первые три шага выше, если кому-то когда-нибудь будет интересно использовать мой код. Это будет GPL, я полагаю;)

1 голос
/ 11 января 2010

Афзал, у меня была похожая проблема, и я обнаружил, что у меня действительно была проблема со строкой подключения. Вы можете посмотреть на следующую ссылку, там есть объяснение и код для создания правильной строки подключения http://www.localytics.com/blog/post/how-to-reliably-establish-a-network-connection-on-any-blackberry-device/

и просто добавьте строку соединения в FetchThread, где он открывает соединение:

connection = (HttpConnection) Connector.open (absoluteUrl + getConnectionString ());

...