0

Facebook と統合する Android アプリを作成しています。キー ハッシュを正常に生成できました。アプリを実行してログインすると、[許可を受け入れる] ボタンが表示されました。[同意する] をクリックしましたが、それ以来、アプリから再度ログインできません。「(ここで使用しているキーを挿入) 許可されたキーと一致しません。(Facebook 開発者の URL をリストする) でアプリ キー ハッシュを構成します」というエラーが表示されます。キーハッシュが機能し、その後停止する理由はありますか? 私は Facebook の設定を一切変更せず、アプリケーション コードも変更しませんでした。新しいキー ハッシュを作成しようとしましたが、それでも機能しませんでした。これが何であるか、またはそれを解決する方法についてのアイデアは大歓迎です!

4

1 に答える 1

2

私はこれを理解しました。どういうわけか、Facebook 側で挿入したものとハッシュ キーが一致しなくなりました。Facebook のドキュメントを使用して、onCreate メソッドにコードを追加し、LogCat のハッシュ キーを教えてくれました。また、パッケージ名を台無しにしていた場合に備えて、例外をキャッチするためのログ コードもいくつか追加しました。これはコードです:

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

        } catch (NoSuchAlgorithmException e) {
            Log.d("Error2", "Algorthim");

        }

それを追加して実行した後、log cat でハッシュ キーを見つけ、それを Facebook アプリにコピーしました。保存してアプリを再度実行すると、うまくいきました!

于 2013-07-19T00:16:17.483 に答える