问题描述
我想要密钥哈希。我能够通过代码获得有效的密钥哈希。我尝试通过命令行,但得到了错误的 SHA 密钥哈希。
代码(有效签名哈希):
try {
PackageInfo info = getPackageManager().getPackageInfo("com.xyz.abc",PackageManager.GET_SIGNATURES);
for (Signature signature : info.signatures) {
MessageDigest md;
md = MessageDigest.getInstance("SHA");
md.update(signature.toByteArray());
String something = new String(Base64.encode(md.digest(),0));
Log.e("hash key",something);
}
} catch (PackageManager.NameNotFoundException e1) {
Log.e("name not found",e1.toString());
} catch (NoSuchAlgorithmException e) {
Log.e("no such an algorithm",e.toString());
} catch (Exception e) {
Log.e("exception",e.toString());
}
调试证书的签名哈希(错误接收):
keytool -exportcert -alias androiddebugkey -keystore %HOMEPATH%\.android\debug.keystore | openssl sha1 -binary | openssl base64
正确的结果由java代码给出。 从命令行获得的错误签名哈希。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)