美文网首页
Android gradle 相关设定

Android gradle 相关设定

作者: dis_tance | 来源:发表于2017-01-14 13:07 被阅读0次

    1、在gradle文件中修改打出包的命名

    def app_name = "projectName"
    
    android.applicationVariants.all { variant ->    
           variant.outputs.each { output ->        
                def outputFile = output.outputFile        
                if (outputFile != null && outputFile.name.endsWith('.apk')) {            
                          def outFileName = app_name            
                          if (android.defaultConfig.versionName != null) {               
                                     outFileName = outFileName + "_" + android.defaultConfig.versionName + "_" + new Date().format('yyyy-MM-dd') + "_" + productFlavors[0].name + ".apk"          
                         }         
                         output.outputFile = new File(outputFile.parent, outFileName)      
                }   
         }
    }```
    
    ****
    
    ## 2、设置默认变量
    
    > buildConfigField("boolean","isTest","false")
    
    可在不同的渠道包内修改,在代码中引用。
    
    ## 3、同一个项目中为不同的渠道设置不同的资源文件
    
    + 设置不同的资源目录,gradle在编译的时候会将渠道指定的资源merge到主目录,从而打出不同渠道的不同包
    
    `参考以下代码`
    
    

    productFlavors {
    yunos{
    //这里可以设置applicationId等变量
    }
    productFlavors.all { flavor ->
    flavor.manifestPlaceholders = [UMENG_CHANNEL_VALUE: name]
    switch (name) {
    case "yunos":
    //设置默认变量
    buildConfigField("boolean", "isTest", "false")
    //设置资源目录
    initSourceSets(name, "src/yunos")
    break;
    }
    }
    }
    //设置目录的方法
    def initSourceSets(flavorName, resPath) {
    android.sourceSets.findAll { source ->
    source.name.equals(flavorName)
    }.each { source ->
    source.setRoot(resPath)
    }
    }```

    项目目录如下图


    项目结构.png

    相关文章

      网友评论

          本文标题:Android gradle 相关设定

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