Gradle 编译交互小技巧

作者: 赏味不足 | 来源:发表于2016-11-07 11:45 被阅读46次

    今天偶然在网上看到这样的小技巧,不过其实按照中Groovy的介绍,这个也是理所当然的,不过这个例子能够打开脑洞,其实啥都可以做。

    首先工程已经在个人开源中:https://github.com/monkeytest15/Gradle_multi_apks/tree/master/monkeyApplication

    如果看到之前的Gradle文章的话其实可以了解到groovy是个什么语言,其次之前其实也都看到gradle的编译是运行之后可以直接产出应用的,这次我们来看下交互的模式。

    这个例子是为了在使用gradle编译的时候能够进行签名的定制化,我们需要在app的目录下,注意不是root project。在app的目录下的build.gradle做如下编写:

    apply plugin: 'com.android.application'
    
    android {
        compileSdkVersion 21
        buildToolsVersion "20.0.0"
    
    
    
        defaultConfig {
            applicationId "com.example.monkey.myapplication"
            minSdkVersion 10
            targetSdkVersion 21
            versionCode 1
            versionName "1.0"
        }
        buildTypes {
            release {
                minifyEnabled false
                proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
            }
        }
        //这个是解决lint报错的代码
        lintOptions {
            abortOnError false
        }
        signingConfigs {
            myConfigs {
                storeFile     file( System.console().readLine("\n\$ Enter keystore path: "))
                storePassword       System.console().readPassword("\n\$ Enter keystore password: ")
                keyAlias            System.console().readLine("\n\$ Enter key alias: ")
                keyPassword         System.console().readPassword("\n\$ Enter key password: ")
            }
        }
        productFlavors {
            qqqq {
                applicationId = 'com.monkey.qqq'
            }
            hhhhh {
                applicationId='com.monkey.hhh'
            }
        }
    
    }
    
    
    
    dependencies {
        compile fileTree(dir: 'libs', include: ['*.jar'])
        compile 'com.android.support:appcompat-v7:21.0.3'
    }
    

    在这中间,关键代码如下:

    gradle1gradle1

    我们可以在编译的时候看到出现了签名的选择:


    gradle2gradle2

    到此我们脑洞可以大开啦~~

    相关文章

      网友评论

        本文标题:Gradle 编译交互小技巧

        本文链接:https://www.haomeiwen.com/subject/jhcouttx.html