Android Studio Gradle

来源:互联网 发布:结婚证生成软件 编辑:程序博客网 时间:2024/05/29 11:13

Gradle初步:

 https://segmentfault.com/a/1190000002439306 


Gradle多渠道打包

https://segmentfault.com/a/1190000004050697


完整一份gradle配置文件:

<span style="font-size:18px;">//声明Android应用程序,module,libraryapply plugin: 'com.android.application'//自定义字段,变量,def releaseTime() {    return new Date().format("yyyy-MM-dd", TimeZone.getTimeZone("UTC"))}android {    compileSdkVersion 21    buildToolsVersion '21.1.2'    defaultConfig {        applicationId "com.boohee.*"        minSdkVersion 14        targetSdkVersion 21        versionCode 1        versionName "1.0"                // dex突破65535的限制        multiDexEnabled true        // 默认是umeng的渠道,manifest.xml中引用${<span style="line-height: 15.6px; font-family: 'Source Code Pro', Consolas, Menlo, Monaco, 'Courier New', monospace; font-size: 0.93em;">UMENG_CHANNEL_VALUE</span>}        manifestPlaceholders = [UMENG_CHANNEL_VALUE: "umeng"]    }    //lint错误检查    lintOptions {        abortOnError false    }    //签名文件配置    signingConfigs {        debug {            // No debug config        }        release {            storeFile file("../yourapp.keystore")            storePassword "your password"            keyAlias "your alias"            keyPassword "your password"        }    }    //编译选项,配置    buildTypes {        debug {            // 显示Log            buildConfigField "boolean", "LOG_DEBUG", "true"            versionNameSuffix "-debug"            minifyEnabled false            zipAlignEnabled false            shrinkResources false            signingConfig signingConfigs.debug        }        release {            // 不显示Log            buildConfigField "boolean", "LOG_DEBUG", "false"            minifyEnabled true            zipAlignEnabled true            // 移除无用的resource文件            shrinkResources true            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'            signingConfig signingConfigs.release            applicationVariants.all { variant ->                variant.outputs.each { output ->                    def outputFile = output.outputFile                    if (outputFile != null && outputFile.name.endsWith('.apk')) {                        // 输出apk名称为boohee_v1.0_2015-01-15_wandoujia.apk                        def fileName = "boohee_v${defaultConfig.versionName}_${releaseTime()}_${variant.productFlavors[0].name}.apk"                        output.outputFile = new File(outputFile.parent, fileName)                    }                }            }        }    }    // 友盟多渠道打包    productFlavors {        wandoujia {}        _360 {}        baidu {}        xiaomi {}        tencent {}        taobao {}        ...    }    productFlavors.all { flavor ->        flavor.manifestPlaceholders = [UMENG_CHANNEL_VALUE: name]    }}dependencies {    compile fileTree(dir: 'libs', include: ['*.jar'])    compile 'com.android.support:support-v4:21.0.3'    compile 'com.jakewharton:butterknife:6.0.0'    ...}</span>


</pre>

0 0
原创粉丝点击