3

Facebook をアプリに統合しました。Debug Key Hash でアプリをテストし、エミュレーターとデバイス HTC で問題ありませんでした。署名済み APK のリリース キー ハッシュを試したところ、デバイス HTC One X で「App is misconfigured for Facebook login」というエラーが常に発生しました。

keytool -exportcert -alias android -keystore C:\android2012\android.keystore | openssl sha1 -バイナリ | openssl base64

上記のコマンドを使用して、リリース キー ハッシュを生成しました。別名は「android」です。パスワードを入力した後、キーハッシュが正常に生成されました。このキー ハッシュは Facebook ダッシュボードに入力され、署名済み APK でアクセスしようとしましたが、失敗しました。

誰でも助けることができますか?このエラーで数日間立ち往生しました。どうもありがとう!

4

6 に答える 6

18

テスト中にエミュレーターまたはデバイスでさえ機能するのは、Eclipse からのテスト中にリリースキーではなくdebug.keystoreを使用するためです。

以下の 2 つの解決策のいずれかに従ってください。

解決策 1:

このリンクを試してください: http://www.helloandroid.com/tutorials/using-facebook-sdk-android-development-part-1。ハッシュ キーを取得する Facebook の方法を使用しても、必ずしも広告どおりに機能するとは限らないことがわかりました。ただし、このリンクにはハッシュキーを取得する別の方法があり、ほとんど常に機能しています。

解決策 2:

そうは言っても、私がいつも最も簡単にできることは、Facebook SDK にあなたのハッシュキーが何であるかを教えてもらうことでした。これははるかに簡単で、数分以上かかることはありません。

ステップ 1: Facebook SDK で、Util.javaクラスを見つけます。その中で、これを変更します:

private static boolean ENABLE_LOG = false;

に:

private static boolean ENABLE_LOG = true;

ステップ 2:新しい署名付き APK を作成し、デバイスに転送してインストールします。すでにインストールされている場合は、当然、プロンプトが表示されます。

ステップ 3: DDMS (Logcat) を実行し、デバイスをコンピューターに接続した状態で、アプリケーションを実行し、キーの不一致の警告を探し続けます。その警告には、実際のハッシュ キーがあります。そのキーをコピーし、Facebook 開発者ページに移動して、新しいキーをリストに追加します。

于 2012-11-08T05:35:30.703 に答える
2

私はこの問題に約1週間立ち往生していました!debug.keystore ではなく、自分のキーストアのハッシュ キーを生成したかったのです。私はWeb上で可能なすべての解決策を試しました...

最後に、私は奇妙な理解に達しました:

keytool -exportcert -alias androiddebugkey -keystore [PATH_TO_KEYSTORE]\debug.keystore | [PATH_TO_OPENSSL]\openssl sha1 -バイナリ | [PATH_TO_OPENSSL]\openssl base64

この方法を使用して、パスワードを求められ、ハッシュキーを受け取りました (間違ったもの)

ここで提案されている 3 つのステップの 2 番目の方法Facebook Android Generate Key Hash

keytool -exportcert -alias androiddebugkey -keystore [PATH_TO_KEYSTORE]\debug.keystore > [PATH_TO_OPENSSL]\debug.txt [PATH_TO_OPENSSL]\openssl sha1 -binary [PATH_TO_OPENSSL]\debug.txt > [PATH_TO_OPENSSL]\bin\debug_sha.txt [PATH_TO_OPENSSL] ]\openssl base64 -in [PATH_TO_OPENSSL]\bin\debug_sha.txt > [PATH_TO_OPENSSL]\bin\debug_base64.txt

この方法を使用すると、パスワードも求められ、別のハッシュキー=正しいものを受け取りました...

PS「androiddebugkey」の代わりにエイリアスを、「debug.keystore」の代わりにキーストアを入れてください

于 2012-11-11T22:11:45.570 に答える