2012-05-04 2 views

ответ

0

http://sean.lyn.ch/2011/07/android-the-facebook-sdk-sso-and-you/

Этот вопрос давно здесь ответа (и в Facebook Android SDK), но я собираюсь попробовать и захватить полное решение для всех, кто заканчивает тем, что наткнуться на эту тему.

Я развивался с использованием Android Android SDK в сочетании с Phonegap и подключаемым модулем Phonegap Facebook. Шаг аутентификации работал нормально, пока я не перешел от развертывания на эмуляторе к реальному устройству. Провал я видел при запуске ADB LogCat было следующее:

D/Facebook-authorize(2194): Login failed: invalid_key 
W/System.err(2194): com.facebook.android.FacebookError: invalid_key 

Я понятия не имею, почему это работает на эмуляторе, но не на устройстве. Я подозреваю, что у Facebook есть сводная политика, позволяющая использовать неподписанные приложения .apk, потому что они не могут быть распределены.

Проблема в том, что Facebook нуждается в информации о ключе, используемом для подписания приложения, чтобы разрешить авторизацию. Я не знал, что среда eclipse подписывает сборки автоматически, когда вы нажимаете их на устройство с помощью отладочного хранилища. Подробности о хранилище отладки Debug доступны в Документах по Android-подписке.

Для того, чтобы обеспечить Facebook с информацией о подписании, необходимо выполнить команду Jay обеспечивает выше (повторяется):

keytool -exportcert -alias androiddebugkey -keystore ~/.android/debug.keystore | openssl sha1 -binary | openssl base64 

Это формирует короткую строку символов (которые могут включать в себя символы, такие как '=' или '/'), которые идентифицируют подпись, называемую сертификатом. Как только у вас есть это, вы должны отдать его Facebook.

Найдите свое приложение на странице разработчика Facebook (или создайте новую, если вы еще не установили ее). После того, как вы на странице резюме приложения, выберите «Редактировать настройки», а затем выберите «Мобильные устройства» и «Устройства» с левой стороны. В разделе Android вы увидите окно для Key Hash. Вставьте строку сертификата из приведенной выше команды в это поле и нажмите «Сохранить».

Дайте ему несколько минут для распространения, и вы должны быть настроены!

0

Как новичок, я был в тупике, когда стандартная процедура генерации ключевого хэша никогда не работала так легко, как вы этого хотели.

Я тем не менее найти много и нашел это невероятно простой способ создания хэш-ключ на этом сайте здесь: http://www.helloandroid.com/tutorials/using-facebook-sdk-android-development-part-1

После того как вы уже ключ, генерируемый Вы можете следить за руководство facebook при добавлении ключа хэша ваше приложение в панели управления приложения.

Надеюсь, это поможет.