Android 了解facebook应用程序上的应用程序哈希

Android 了解facebook应用程序上的应用程序哈希,android,facebook,Android,Facebook,当我尝试点击“登录Facebook”按钮时,加载动画出现,但什么也没有发生。如果我删除了所有的哈希,它会打开登录屏幕,但是没有显示哈希。我应该使用开发者哈希还是发布哈希?我到底错过了什么?我使用以下代码生成哈希: try { PackageInfo info = getPackageManager().getPackageInfo( "PACKAGE", PackageManager.GET_

当我尝试点击“登录Facebook”按钮时,加载动画出现,但什么也没有发生。如果我删除了所有的哈希,它会打开登录屏幕,但是没有显示哈希。我应该使用开发者哈希还是发布哈希?我到底错过了什么?我使用以下代码生成哈希:

try {
            PackageInfo info = getPackageManager().getPackageInfo(
                    "PACKAGE",
                    PackageManager.GET_SIGNATURES);
            for (android.content.pm.Signature signature : info.signatures) {
                MessageDigest md = MessageDigest.getInstance("SHA");
                md.update(signature.toByteArray());
                Log.wtf("KeyHash:", Base64.encodeToString(md.digest(), Base64.DEFAULT));
            }
        } catch (PackageManager.NameNotFoundException e) {

        } catch (NoSuchAlgorithmException e) {

        }
编辑:

我在android片段中有以下facebook登录代码:

    loginButton = (LoginButton) fragment.findViewById(R.id.login_button);
    loginButton.setReadPermissions("user_friends");
    // If using in a fragment
    loginButton.setFragment(this);
    // Other app specific specialization

    // Callback registration
    loginButton.registerCallback(C.callbackManager, new FacebookCallback<LoginResult>() {
        @Override
        public void onSuccess(LoginResult loginResult) {

            Log.wtf("onSuccess",loginResult.toString());

        }

        @Override
        public void onCancel() {

            Log.wtf("onCancel","");
        }

        @Override
        public void onError(FacebookException exception) {
            Log.wtf("onError",exception.toString());
        }
    });
loginButton=(loginButton)fragment.findviewbyd(R.id.login_按钮);
setReadPermissions(“用户朋友”);
//如果在片段中使用
setFragment(this);
//其他特定于应用程序的专门化
//回调注册
registerCallback(C.callbackManager,newfacebookcallback()){
@凌驾
成功时公共无效(LoginResult LoginResult){
Log.wtf(“onSuccess”,loginResult.toString());
}
@凌驾
公开作废{
Log.wtf(“onCancel”,“onCancel”);
}
@凌驾
public void onError(facebook异常){
Log.wtf(“onError”,exception.toString());
}
});

您应该作为开发人员对其进行测试,并检查facebook应用程序设置以及清单中的权限,以确保检查此处:

在调试模式下,您使用调试哈希。您必须在Facebook应用程序中设置哈希才能登录。您可以输入您的登录代码吗?@joao2fast4u请检查编辑。如果您的哈希正确并在Facebook开发端设置,您必须在回调上使用断点来了解失败/被取消的原因。完成五次。。。在开始测试应用程序之前,我是否应该更改某些内容?如果单击“登录”按钮,则会出现加载动画,然后什么也不会发生这意味着什么?