2011-12-31 10 views
6

keytool -exportcert -alias mykeystore -keystore mykeystore| openssl sha1 -binary | openssl base64Facebookのキーハッシュ、Androidのキーストアの混乱

こんにちは、私は私のFacebookのキーハッシュを生成するために、上記のコマンドを使用しています。それは私のパスワードを要求し、私に鍵のハッシュを与える。私はこの重要なハッシュをFacebookのアプリケーション設定に入れましたが、署名されたアンドロイドアプリでは機能しません。

アンドロイドアプリをデバッグしているときに、「アンドロイドキーハッシュblahblahblah」が認識されないというコンソールメッセージが表示され、Facebookのアプリに「blahblahblah」がコピーされていました。デバッグモード中にFacebookのものを使用してください。しかし、明らかにそれはデバッグキーストアだけでした。今度は本当のキーストアのためにそれが生成するものは間違っているので、私のアプリのプロダクションバージョンはfacebook apiを使うことができません。

私のキーストアについての一つの事は、それが日食で作られたということです。それは2つのキーを持つ1つのキーストアです。私は、eclipseのキーストアがコマンドラインのキーストアのものとは異なる動作をしていることに気付きました。また、それらは署名のために互換性がありません。しかし、私はすでに私のアプリのバージョンをリリースしているので、私はすでに使用しているキーのためにする必要があります。

洞察をいただきありがとうございます。

答えて

5

keytool -listを使用して、所有しているエイリアスを一覧表示します。あなたがリリースしたAPKに署名するために使用したものがわからない場合は、両方を試してみてください。 1つは働くはずです。

+0

あなたは私に完全なコマンドを与えることができますか?私は 'keytool -list -keystore mykeystore'を実行し、パスワードを尋ねた後、' Certificate fingerprint(MD5):2B:43:D7:57:.........という形式の証明書フィンガープリントを表示しました.. "は、フォーマットのfacebookが望むフォーマットではありません。エイリアスのリストを表示するにはどうすればいいですか? – CQM

+2

'keytool -list -v -keystore'を使ってエイリアスを表示する( 'エイリアス名:...'の行を確認してください)、元のエイリアスを置き換えますそれらのコマンド。 –

0

Windows上でCygwinを実行している場合は、キーストアを見つけることのcygpathを使用します。

keytool -exportcert -alias androiddebugkey -keystore $(cygpath -aw ~/.android/debug.keystore) | openssl sha1 -binary | openssl base64 Keystore-Kennwort eingeben: android 

それは動作しません/のcygpath/C /ユーザー/名前を使用して/ ...場合。

1

私はこの同じ問題がありました - デバッグハッシュキーは機能しましたが、プロダクションキーは機能しませんでした。私は最初にインストールしたものとは別のソースからOpenSSLをインストールし、ハッシュキーを再作成して問題を修正しました。これは私が働いていたOpenSSLを持っているサイトです:http://gnuwin32.sourceforge.net/packages/openssl.htm

+0

Dude。あなたは生命の保護者です。他のすべての投稿は署名する*方法*でした。私は既にそれをしていたので、GooglePlayに既にデプロイしていて、ベータテスターの一部が厄介になっていたので少し欲求不満を感じていました。あなたのコメントを見たとき、私はすぐにあなたのリンクをたどり、そのバージョンのOPENSSLを使いました。 – Krafty

+0

あなたを助けてくれてうれしい! –

関連する問題