1、创建android应用签名文件(以下都是以MAC系统为例)
localhost:android liumeiwang$ keytool -genkey -v -keystore AAA-release.keystore -alias BBB -keyalg RSA -validity 40000
输入密钥库口令:123456
再次输入新口令:123456
您的名字与姓氏是什么?
[Unknown]: 123
您的组织单位名称是什么?
[Unknown]: 123
您的组织名称是什么?
[Unknown]: 123
您所在的城市或区域名称是什么?
[Unknown]: 123
您所在的省/市/自治区名称是什么?
[Unknown]: 123
该单位的双字母国家/地区代码是什么?
[Unknown]: 123
CN=123, OU=123, O=123, L=123, ST=123, C=123是否正确?
[否]: y
正在为以下对象生成 2,048 位RSA密钥对和自签名证书 (SHA256withRSA) (有效期为 40,000 天):
CN=123, OU=123, O=123, L=123, ST=123, C=123
输入
(如果和密钥库口令相同, 按回车):
[正在存储AAA-release.keystore]
Warning:
JKS 密钥库使用专用格式。建议使用 "keytool -importkeystore -srckeystore AAA-release.keystore -destkeystore AAA-release.keystore -deststoretype pkcs12" 迁移到行业标准格式 PKCS12。
localhost:android liumeiwang$ keytool -importkeystore -srckeystore AAA-release.keystore -destkeystore AAA-release.keystore -deststoretype pkcs12
输入源密钥库口令:
已成功导入别名 bbb 的条目。
已完成导入命令: 1 个条目成功导入, 0 个条目失败或取消
2、创建release-singing.properties文件,内容:
touch release-singing.properties
key.store=AAA-release.keystore
key.alias=BBB
key.store.password=123456
key.alias.password=123456
3、(mac系统用户关注)创建build-extras.gradle文件,内容:
touch build-extras.gradle
android {
lintOptions { disable 'MissingTranslation', 'ExtraTranslation' }
}
4、cordova build android --release
/项目根目录/platform/android/build/outputs/apk/
目录下找到android-release.apk文件,打包成功;
keytool -list -v -keystore ./xxx-release.keystore -storepass "你设置的密码"
可以查看release发布版本的信息,其中包括md5、SHA1等等字符串;
通过命令:
keytool -list -v -keystore ~/.android/debug.keystore -alias androiddebugkey -storepass android -keypass android
可以查看debug开发版的信息。在使用一些cordova插件比如百度地图、高德地图的时候,需要用到这种SHA1,注意的~/.android目录是mac下的,window用户请自行跑到C:\Users\[USERNAME]\.android这个目录下执行,执行这个命令好像要安装android studio,具体情况不太清楚,因为我的mac是有android studio,但是window没有,也没有在window上试过。