为什么keytool会生成不同的facebook androiddebugkey哈希?

时间:2016-03-04 14:13:20

标签: android facebook hash keytool

我正在创建使用Facebook登录SDK的Android应用程序。

我想生成调试密钥哈希。在Facebook网站上,我找到了这个命令:

  

keytool -exportcert -alias androiddebugkey -keystore   %HOMEPATH%.android \ debug.keystore | openssl sha1 -binary | OpenSSL的   BASE64

我修改了此命令以在我的计算机上运行:

  

keytool -exportcert -alias androiddebugkey -keystore   C:\ Users \ redio \ .android \ debug.keystore | “C:\ OpenSSL \ bin \ openssl”sha1   -binary |“C:\ OpenSSL \ bin \ openssl”base64

接下来我输入了密码:android

此命令生成此哈希:QUhvjKstiP5gc7hPEzwF89mwHws =

然后我将它粘贴在facebook开发者控制台中 和Facebook仍然说密钥哈希是无效的。我知道我可以从警告消息中复制密钥哈希,并将其粘贴到Facebook开发人员控制台中。但我的问题是为什么keytool生成错误的密钥哈希?

1 个答案:

答案 0 :(得分:3)

我在使用keytool生成有效哈希时遇到了很多问题,但我实现了下面找到的方法,并且能够注销有效的哈希。代码的确切来源有点不清楚,但this blog post是一个很好的猜测。

// Agent extends User
public function customers() 
{
  return $this->hasMany(Customer::class, 'agent_id');
}

// Customer extends User
public function agent()
{
  return $this->belongsTo(Agent::class, 'agent_id');
}