Android 仅在Google Play上显示的错误

Android 仅在Google Play上显示的错误,android,facebook-android-sdk,Android,Facebook Android Sdk,当一个用户试图通过Facebook登录时,我的Android应用程序的登录页面正在循环。此错误是由于Facebook sdk请求权限造成的。不幸的是,只有在从Google Play商店下载应用程序时才会请求权限。如何调试此问题 谢谢我认为您在生成Play Store版本(使用不同的应用程序签名,因此使用不同的密钥散列)时,没有在Facebook控制台中添加应用程序的密钥散列 将以下代码添加到主活动onCreate()方法: try { PackageInfo info =

当一个用户试图通过Facebook登录时,我的Android应用程序的登录页面正在循环。此错误是由于Facebook sdk请求权限造成的。不幸的是,只有在从Google Play商店下载应用程序时才会请求权限。如何调试此问题


谢谢

我认为您在生成Play Store版本(使用不同的应用程序签名,因此使用不同的密钥散列)时,没有在Facebook控制台中添加应用程序的密钥散列

将以下代码添加到主活动onCreate()方法:

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

    } catch (NoSuchAlgorithmException e) {

    }
生成应用程序的play store版本并在设备上运行

您应该在logcat日志中看到您的密钥散列。只需在Facebook控制台中添加密钥散列(设置>基本>密钥散列),等待几分钟,它现在就可以工作了

从主活动中删除代码