与cordovaFacebook的Android密钥哈希

我正在开发与Meteor和Cordova的混合应用程序。 我想configurationFacebook的连接,并得到它在iOS上工作,但我卡在android。 我似乎无法find正确的密钥散列。 我总是得到这个消息:

密钥散列无效。 密钥哈希…不匹配任何存储的密钥哈希值。

我已经尝试通过以下命令find正确的密钥哈希值:

keytool -exportcert -alias androiddebugkey -keystore ~/.android/debug.keystore | openssl sha1 -binary | openssl base64 

和标准密码“android”。 我将所得到的密钥添加到Facebook,但没有帮助。 我也在下面的post中尝试过这个工具。 它给了我另一个关键,也没有工作。 有任何想法吗?

Solutions Collecting From Web of "与cordovaFacebook的Android密钥哈希"

meteor使用自己的debugging密钥库,通过meteor运行Android设备创build一个Android应用程序。 keystore可以在〜/ .meteor / android_bundle / .android / debug.keystore中find

使用下面的代码和密钥库密码android来创build你的keyhash:

 keytool -exportcert -alias androiddebugkey -keystore \ ~/.meteor/android_bundle/.android/debug.keystore | openssl sha1 -binary | openssl base64 

我通过相同的问题,只是把FB上的错误信息的关键设置,它的工作。

Facebook keyhash与您的应用程序的软件包名称和密钥库一起工作。

获取您的apk与生产密钥库签名,并使用下面的代码来获取facbook keyhash

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

Facebook的Keyhash将以'='开头等于符号。 出于testing目的,您可以同时拥有debugging密钥库和生产密钥库中的keyhash。

更多信息可以在这里find 。