Android:Facebook Hash键参数混乱

时间:2016-09-13 14:57:51

标签: android facebook authentication xamarin xamarin.android

您好我正在尝试在fb开发门户中添加哈希键。但我对需要改变什么和需要保持不变的东西感到困惑。

  1. 对于Dev环境,要生成哈希键,我们需要运行:
  2. 的Mac:     keytool -exportcert -alias androiddebugkey -keystore~ / .android / debug.keystore | openssl sha1 -binary | openssl base64

    我们是否只需要编辑~/.android/debug.keystore并提供位置,或者在生成哈希键之前还有其他任何我们需要更改的内容,如“androiddebugkey”一词。

    1. 对于生产环境:

      key tool -exportcert -alias YOUR_RELEASE_KEY_ALIAS -keystore YOUR_RELEASE_KEY_PATH | openssl sha1 -binary | openssl base64

    2. 我们只需要编辑YOUR_RELEASE_KEY_ALIAS& YOUR_RELEASE_KEY_PATH?如果是,我们需要为YOUR_RELEASE_KEY_ALIAS提供什么名称?

3 个答案:

答案 0 :(得分:1)

别名是标识密钥的名称,当您创建新密钥库时,您必须设置密钥别名,这是您必须在命令中放置的名称,您还必须设置密钥库的路径(don不要忘记文件扩展名

您可以看一下:https://developer.android.com/studio/publish/app-signing.html

答案 1 :(得分:1)

首先要注意的是keytool是一个词。第二项是facebook的文档向您展示了要更换的内容:

https://developers.facebook.com/docs/android/getting-started#release-key-hash

即。您替换版本密钥库的ALIAS和版本密钥库的PATH

关于您的调试密钥库,您不需要替换PATH以外的任何内容,因为androiddebugkey是调试环境的默认别名。

对于名称,您需要提供首先设置发布密钥库的ALIASPATH文件的.keystore

https://developer.xamarin.com/guides/android/deployment,_testing,_and_metrics/publishing_an_application/part_2_-_signing_the_android_application_package/#_Create_a_Private_Keystore_

答案 2 :(得分:1)

只需打开您的活动并创建功能:

 try {
    PackageInfo info = getPackageManager().getPackageInfo(
            "your.application.package.name",
            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 (PackageManager.NameNotFoundException e) {

} catch (NoSuchAlgorithmException e) {
 }

运行活动时打开logcat并使用" KeyHash"搜索logcat。