32

アプリケーションへのログインに facebook SDK を使用しています。アプリケーションは HTC デバイスで問題なく動作します。Facebookアプリが事前にインストールされていない場合、アプリケーションはSamsungデバイスでも正常に動作します.

しかし、モバイルに既に facebook アプリがあり、ユーザーが私のアプリをインストールした場合、ユーザーはログインしません。私の知る限り、これはシングル サインオンの問題である可能性があり、生成に多少関連していると思います。適切なアプリケーション ハッシュ キー、およびモバイル アプリへのログインに使用した Facebook アプリケーションでのハッシュ キーの使用。

ハッシュキーの作成方法を教えてください。私はubuntu 10.4を実行しています。

ターミナルでこのコマンドを実行すると:-

keytool -exportcert -alias <your keystore alias name>.keystore -keystore ~/.android/<your keystore name>.keystore | openssl sha1 -binary | openssl base64

ハッシュ キーは与えられますが、パスワードの入力を求められることはありません。

4

6 に答える 6

62

これを試して:

keytool -exportcert -alias androiddebugkey -keystore ~/.android/debug.keystore | openssl sha1 -バイナリ | openssl base64

あなたがそれを手に入れることを願っています。確認したところ、パスワードのプロンプトが表示されました。

于 2011-05-13T08:56:54.623 に答える
46

このコードブロックを使用して、ハッシュキーを生成できます。このコードブロックをonCreate()メソッドに配置します。

try {
        PackageInfo info = getPackageManager().getPackageInfo(
                "Your package name", 
                PackageManager.GET_SIGNATURES);
        for (Signature signature : info.signatures) {
            MessageDigest md = MessageDigest.getInstance("SHA");
            md.update(signature.toByteArray());
            Log.d("Your Tag", Base64.encodeToString(md.digest(), Base64.DEFAULT));
            }
    } catch (NameNotFoundException e) {

    } catch (NoSuchAlgorithmException e) {

    }
于 2013-02-19T12:21:02.837 に答える
3

次のようにコマンドを入力するだけです:

keytool -exportcert -alias androiddebugkey -keystore debug.keystore

キーストロークパスワードまたはandroidを入力するか、入力します

ここで、「.android」までディレクトリ構造に移動してから、このコマンドを実行する必要があります。一般に、パスはC:\Users\User-name\.android>.

于 2012-10-17T07:06:46.640 に答える
2

環境内の3つの部分を確認してください。

  1. 「debug.keystore」はどこにありますか?

    探す/ -name "debug.keystore"

    見つからない場合は、EclipseまたはADTを確認してください。

  2. エイリアス名とは何ですか?

    keytool -list -v -keystore "PATH_TO_DEBUG_KEYSTORE"

  3. opensslがインストールされているかどうかを確認します

    openssl

すべての準備ができたら、パスワードの入力を求められます

于 2013-02-27T17:11:38.827 に答える