2013-08-07 2 views
3

У меня возникла странная проблема с использованием плагина facebook с сборкой phonegap. Это звучит как проблема с сертификатом, но я не могу понять это.Phonegap Build facebook Connect Plugin (android)

Я попробовал образец кода найти здесь: github.com/amirudin/pgb-fbconnect

Я следовал инструкциям в readme.md файле.

Когда я впервые запускаю приложение для Android и когда я нажимаю кнопку «Войти», все работает нормально, и я могу подключиться к приложению facebook.

Теперь я нажал кнопку выхода из системы. Хорошо, это работает.

Но если я снова нажал кнопку входа в систему, у меня есть сообщение об ошибке в facebook: «invalid android_key_parameter. Ключ xxxxxxxxxxxxxx не соответствует разрешенному ключу».

Но ключ xxxxxx в сообщении не соответствует ключу, который я установил на панели настроек приложения facebook.

У меня есть небольшое видео о моей проблеме здесь: Dropbox video

Я не понимаю, почему он отлично работает во время первого входа в систему и потерпеть неудачу во втором .... Кажется, что второй раз, то изменение подписи.

Справка!

Я создал github repo, если кто-то хочет его протестировать. Вам просто нужно изменить APP_NAME и APP_ID в файле config.xml и APP_ID в index.html

Очень жаль, что у вас есть что-то, что «почти» работает.

Удалось ли воспроизвести мою ошибку/поведение? (login + logout + login = fail)

+0

Это выглядит довольно странно. Я бы порекомендовал вам опубликовать эту тему на своем сайте GetSatisfaction: http://community.phonegap.com/nitobi/products/nitobi_phonegap_build –

ответ

1

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

Если вы создаете этот хэш в Windows (в частности, 64-разрядные версии), используйте версию 0.9.8e или 0.9.8d OpenSSL для Windows, а не 0.9.8k.

После загрузки OpenSSL, откройте командную строку (cmd.exe) в качестве администратора, выполните следующую команду:

keytool -genkey -v -keystore [keystore_name].keystore -alias [alias_name] -keyalg RSA -keysize 2048 -validity 10000 

Пожалуйста, обратите внимание alias_name, и хранить все пароли andriod

Теперь перейдите в свою учетную запись мобильного телефона >> отредактируйте учетную запись >> Нажмите на закладку подписи ключей >> Нажмите «добавить ключ ...» и введите следующую информацию:

Title - anything 

Alias - alias_name that you have given while generating the keystore file. 

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

Используйте команду для генерации хэш-ключа.

keytool -exportcert -alias [alias_name] -keystore [keystore_filename.keystore] | openssl sha1 -binary | openssl base64

Это должно быть!