当我们申请友盟或者百度地图等密钥时,会需要SHA1或者MD5,查一些资料都是用es或者dos命令生成,现在尝试用As生成。
新建一个项目,然后按照下图操作,看会有什么效果:
根据我描述的三步,直接发现直接生成了debug的SHA1和MD5:如图
是不是很快捷,现在就来试着同时生成debug和release的SHA1和MD5值。
第一步:把Store: C:\Users\Administrator\.android\debug.keystore中的debug.keystore文件拷贝到项目文件config下:
第二步:获取正式签名包的.jks文件,同样拷贝到config文件夹下,如果没有该文件,用build->Generate Signed Apk去获取,这里不细讲了
第三步:在config文件夹下新建signing.properties文件,内容如下
其实就是对应的签名:
好了到这里我们config文件夹下已经有三个文件了
第四步,也是最后一步,配置gradle:
signingConfigs {
debug {
storeFile file("../config/debug.keystore")
}
release {
storeFile file("release.jks")
}
}
buildTypes {
release {
minifyEnabled true
signingConfig signingConfigs.release
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
File propFile = file('../config/signing.properties');
if (propFile.exists()) {
def Properties props = new Properties()
props.load(new FileInputStream(propFile))
if (props.containsKey('STORE_FILE') && props.containsKey('STORE_PASSWORD') &&
props.containsKey('KEY_ALIAS') && props.containsKey('KEY_PASSWORD')) {
android.signingConfigs.release.storeFile = file(props['STORE_FILE'])
android.signingConfigs.release.storePassword = props['STORE_PASSWORD']
android.signingConfigs.release.keyAlias = props['KEY_ALIAS']
android.signingConfigs.release.keyPassword = props['KEY_PASSWORD']
} else {
android.buildTypes.release.signingConfig = null
}
} else {
android.buildTypes.release.signingConfig = null
}
完成后,如图所示:
到这里我们基本完成了,再执行下文章最开始那一步:
发现debug和release都直接生成了:
至此,大功告成。