几天前我开始使用Gradle构建系统,并按照我想要的方式工作,这里是:
buildscript {
repositories {
mavenCentral()
}
}
dependencies {
classpath 'com.android.tools.build:gradle:0.6.+'
}
apply plugin: 'com.android.application'
android {
compileSdkVersion 17
buildToolsVersion '18.0.1'
productFlavors {
flavor1 {
packageName "flavor1"
}
flavor2 {
packageName "flavor2"
}
flavor3 {
packageName "flavor3"
}
}
sourceSets {
main {
manifest.srcFile 'AndroidManifest.xml'
java.srcDirs = ['src']
resources.srcDirs = ['src']
renderscript.srcDirs = ['src']
res.srcDirs = ['res']
assets.srcDirs = ['assets']
}
signingConfigs {
release {
storeFile file("test.keystore")
storePassword "*****"
keyAlias "****"
keyPassword "*****"
}
}
buildTypes {
release {
signingConfig signingConfigs.release
}
}
}
dependencies {
compile fileTree(dir: 'libs', include: '*.jar')
}
}
正如你可以看到,这里只是构建3种口味的应用程序,并使用相同的键签名.我只是运行gradle assembleRelease,20秒后,我的apks在构建文件夹.但问题是有其他文件生成,我不想要的例如appname-release-unaligned.apk.
我知道这个文件是需要的,在apk可以签名之前,但是想添加一个任务来删除这些文件在我的毕业生脚本?
另外如果可能的话,我想删除在生成期间生成的所有其他(shell我说的文件文件).本质上,我想运行像小孩干净的东西,但离开构建的apk文件.我该如何做?
奖金:如果有人指出如何优化这个脚本,并启用zip align和proguard(没有自定义规则只是默认混淆是好的),这也将有助于我,因为我是新来的毕业,没有一个教程,我遵循解释这些脚步.