1、本地gradle版本要与android studio中的gradle插件相匹配,否则在android studio外打包项目时会提示错误。
将本地版本由4.5.1修改为5.5.1,并修改.bash_profile文件中的gradle_name的路径。
lishuaikangdeMacBook-Pro:waiter lishuaikang$ gradle assembleDebug
Starting a Gradle Daemon, 1 busy and 1 incompatible Daemons could not be reused, use --status for details
FAILURE: Build failed with an exception.
* Where:
Build file '/Users/lishuaikang/AndroidStudioProjects/waiter/app/build.gradle' line: 1
* What went wrong:
A problem occurred evaluating project ':app'.
> Failed to apply plugin [id 'com.android.application']
> Minimum supported Gradle version is 5.1.1. Current version is 4.5.1. If using the gradle wrapper, try editing the distributionUrl in /Users/lishuaikang/AndroidStudioProjects/waiter/gradle/wrapper/gradle-wrapper.properties to gradle-5.1.1-all.zip
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.
* Get more help at https://help.gradle.org
BUILD FAILED in 4s
android项目gradle打包编译出错,提示android gradle tool支持最低的gradle版本为5.1.1。但是我本地安装的版本是4.5.1。
2、通过命令可以打开发、生产的两个不同版本。修改项目build.gradle文件:
signingConfigs {
debug {
storeFile file('/Users/lishuaikang/.android/debug.keystore')
storePassword 'android'
keyAlias 'androiddebugkey'
keyPassword 'android'
// v1SigningEnabled true
// v2SigningEnabled true
}
release {
storeFile file('/Users/lishuaikang/Documents/release.keystore')
storePassword 'android'
keyAlias 'androidreleasekey'
keyPassword 'android'
// v1SigningEnabled true
// v2SigningEnabled true
}
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
signingConfig signingConfigs.release
}
debug {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
signingConfig signingConfigs.debug
}
}
分别配置上证书的路径和密码、别名。
执行打包命令:
gradle assembleDebug
gradle assembleRelease
分别是开发版本和生产版本。
但是报错了:
Failed to generate v1 signature
不知掉原因是什么。
删除老的证书,重新生成证书。好了。
3、证书的生成。
lishuaikangdeMacBook-Pro:Documents lishuaikang$ keytool -genkey -alias androidreleasekey -keyalg RSA -validity 10000 -keystore release.keystore
输入密钥库口令:
再次输入新口令:
您的名字与姓氏是什么?
[Unknown]: shuaikangli
您的组织单位名称是什么?
[Unknown]: hq
您的组织名称是什么?
[Unknown]: hq
您所在的城市或区域名称是什么?
[Unknown]: hangzhou
您所在的省/市/自治区名称是什么?
[Unknown]: zhejiang
该单位的双字母国家/地区代码是什么?
[Unknown]: zh
CN=shuaikangli, OU=hq, O=hq, L=hangzhou, ST=zhejiang, C=zh是否正确?
[否]: 是
输入 <androidreleasekey> 的密钥口令
(如果和密钥库口令相同, 按回车):
Warning:
JKS 密钥库使用专用格式。建议使用 "keytool -importkeystore -srckeystore release.keystore -destkeystore release.keystore -deststoretype pkcs12" 迁移到行业标准格式 PKCS12。
lishuaikangdeMacBook-Pro:Documents lishuaikang$ ls
apache-maven-3.6.0 gradle-4.5.1 gradle-5.5.1 rabbitmq_server-3.6.15 release.keystore zookeeper-3.4.12
lishuaikangdeMacBook-Pro:Documents lishuaikang$
具体就不解释了,按照提示来就行。
keytool -genkey -alias androidreleasekey -keyalg RSA -validity 10000 -keystore release.keystore
命令