美文网首页
Gradle 使用总结

Gradle 使用总结

作者: 鈤汌冈板 | 来源:发表于2018-01-23 19:38 被阅读13次

[TOC]

1、gradle.properties

在gradle.properties中配置好的参数,可以再build.gradle中直接使用。但要注意类型。

buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
            signingConfig signingConfigs.config
        }
        //当出现3个或者3个以上环境和多个渠道时,线上不提供debug打包方式。
        //直接使用特定渠道包作为测试包,指定不同包名
        debug {
            signingConfig signingConfigs.config
            buildConfigField 'String','BASE_URL',BASE_URL_DEBUG
            buildConfigField 'String','H5_BASE_URL',H5_BASE_URL_DEBUG
            buildConfigField 'String','NODE_JS',NODE_JS_DEBUG
            buildConfigField 'boolean','IS_TEST','true'
            manifestPlaceholders = [UMENG_CHANNEL_VALUE: "debug"
                                    ,JPUSH_APPKEY_VALUE: JPUSH_KEY_TEST]
        }
    }

如上所示,BASE_URL_DEBUG就是在gradle.properties中配置的变量

2、多渠道打包配置manifest文件

在AndroidManifest.xml文件中添加占位符

<meta-data
            android:name="JPUSH_APPKEY"
            android:value="${JPUSH_APPKEY_VALUE}"/>

然后在build.gradle中进行赋值

manifestPlaceholders = [UMENG_CHANNEL_VALUE: "debug"
                                    ,JPUSH_APPKEY_VALUE: JPUSH_KEY_TEST]

3、-P命令入参构建

将姓名、时间等作为参数构建apk。

applicationVariants.all { variant ->
                variant.outputs.each { output ->
                    def outputFile = output.outputFile
                    if (outputFile != null && outputFile.name.endsWith('.apk')) {
                        if (project.hasProperty('ivan')){
                        outputFileName = ivan+".apk"
                    } else {
                        outputFileName = "123.apk"
                    }
                    }
                }
            }

如果此时报错

Cannot set the value of read-only property 'outputFile' .......

貌似是因为gradle版本的问题,那就换成下面的代码:

debug {
            android.applicationVariants.all { variant ->
                variant.outputs.all {
                    if (project.hasProperty('ivan')){
                        outputFileName = ivan+".apk"
                    } else {
                        outputFileName = "123.apk"
                    }
                }
            }
        }

gradle 命令:

gradle assembleDebug -Pivan=zhang

这样打包出来的apk名称为zhang.apk

4、待续

相关文章

  • 工具

    AndroidStudio Gradle脚本 Android Gradle 常用使用场景实现方式的总结 Git G...

  • gradle使用总结

    快速地导入别人的项目 当我们在AS中导入别人的项目时(如github中的开源项目),有时会发现特别地慢,这是因为如...

  • Gradle 使用总结

    [TOC] 1、gradle.properties 在gradle.properties中配置好的参数,可以再bu...

  • <总结>Gradle简单总结及Android相关

    本文主要总结的内容如下: Groovy介绍 一、Gradle简介(定义与特性) 二、Gradle使用1、Multi...

  • [转载]使用gradle开发intellij idea plug

    引用:Gradle依赖项学习总结,dependencies、transitive、force、exclude的使用...

  • android 图片加载框架

    哪三大图片加载框架? 介绍: 总结: 本文总结使用Glide gradle中导入Glide 代码中使用 为Glid...

  • Gradle升级3.0问题总结

    Gradle升级3.1问题总结 背景:项目早期用的Gradle插件版本2.3.0,由于版本较老,无法使用Gradl...

  • Android Gradle使用总结

    版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/zhaoyanj...

  • Gradle使用技巧总结

    记录使用Android Studio以及Gradle的心路历程。系列文章将持续更新中。。。 加速篇 第一次加载项目...

  • Android Gradle使用总结

    参考文章(写的非常详细):Android Gradle使用总

网友评论

      本文标题:Gradle 使用总结

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