Android工作室和控制台构build的Android APK具有不同的SHA指纹

在构build签名版APK时,我遇到了以下问题:如果我使用build.gradle文件(仅适用于相关部分)从android studio(通过Build – > Generate Signed APK... )构build签名的apk

 signingConfigs { release { storeFile file('/keystore/location/mykeystore.keystore') storePassword 'storepassword' keyAlias 'key' keyPassword 'keypassword' } } buildTypes { release { signingConfig signingConfigs.release } } 

由此产生的apk指纹是YY:YY
但是,如果我从控制台构build我的APK,如这里描述与build.gradle像这样:

 buildTypes { release { } } 

并用相同的密钥库文件签名,得到的apk指纹是XX:XX

另外,两个SHA指纹都与我的debugging证书SHA指纹不同。 这种行为的原因是什么?

我正在使用buildToolsVersion 23.0.0
android studio gradle版本1.3.0
android sdk工具版本24.3.4
android studio版本1.3.1

你检查了密钥库的内容吗? 指纹必须匹配其中一个证书。 密钥库中可能有多个证书,在从控制台签名期间可能会使用不同的证书? 您可以通过运行以下命令来检查证书:

keytool -v -list -keystore / path / to / keystore

input密钥库的密码,你应该得到一个别名列表。 我也会检查debugging密钥库,以确保没有其他证书。

我能想到的唯一的另一种可能性是导致使用不同密钥库的path问题。