使用adb命令对apk进行签名:
jarsigner -verbose -keystore keystore.jks -signedjar signed.apk unsigned.apk alias_name
keystore.jks: key的路径及名称.
signed.apk : 签名以后生成的app名称.
unsigned.apk: 未签名文件路径及名称.
alias_name :签名的别称.
命令会提示输入密码,密码输入后看不见,没有关系,按回车即可,生成的签名apk在当前路径下。
如:在C:\Program Files\Android\Android Studio1\jre\bin目录下运行:
.\jarsigner -verbose -keystore E:\download\xxx.jks -signedjar E:\download\signed.apk unsigned.apk bieming
奇怪的是,签名文件、两个apk不能放在同一目录下,否则会签名失败。。。
再介绍下AndroidStudio生成签名的简要步骤:
AndroidStudio的gradle自动签名设置:
android {
//签名设置
signingConfigs {
release {
keyAlias '...'
keyPassword '...'
storeFile file('../xx.jks')//加"../"表示该文件位于上一级即项目根路径下
storePassword '...'
}
debug {
keyAlias '...'
keyPassword '...'
storeFile file('../xx.jks')
storePassword '...'
}
}
buildTypes {
release {
...
signingConfig signingConfigs.release
}
debug {
...
signingConfig signingConfigs.debug
}
}
}
选择debug或release方式编译: