zoukankan      html  css  js  c++  java
  • Android开发:《Gradle Recipes for Android》阅读笔记(翻译)3.1——使用Build Types

    问题:

    你想要自定义debug和release的build types,并且新建一些新的types。

    解决方案:

    使用buildTypes块配置build types。

    讨论:

    build type决定了app如何被打包。默认的,android的gradle插件支持两种build type:debug和release。两种都在模块的build.gradle文件中的buildTypes块下定义。在新的项目下的buildTypes块如下:

    例子中值显示了release的build,但是想要编辑默认配置可以很容易的增加debug块。每个块都可以支持一些列的属性。完整的属性和方法可以在http://google.github.io/android-gradle-dsl/current/index.html上查看。

    在release里面,minifyEnaled和自动去除包里面没有用到的资源有关。如果设置为true,gradle也会去除没有用到的依赖库。这只有在shrinkrResources属性也被设置为true的时候才生效。

    更多的细节可以查看https://developer.android.com/studio/build/shrink-code.html页面。

    在buildtypes里面还有个属性叫debuggable。debug builds自动设置debuggable为true,其他builds都默认为false。

    为了在同一个设备上安装不同build types的同一app,Android必须能够区分他们的应用ID。applicationIDsuffix属性可以允许gradle生成多个拥有不同id的apk。

    android {
    buildTypes {
            debug {
                applicationIDsuffix '.debug'
                versionNameSuffix '-debug'
            }
        } 
    }

    现在同一个设备上可以同时安装release和debug版本的app。如果你能看到设备配置,在Apps里面,你可以看到debug和release版本是同一个app。

    如果要区分它们,可以分别选择每个版本在“App info”设置里面查看完整的版本名。

  • 相关阅读:
    C 标准库
    C 标准库
    C 标准库
    C 标准库
    Chrome内核保存为mhtml(单网页)
    C 标准库
    C 标准库
    【转】AOP
    [转]控制反转与依赖注入模式
    [转]乐观锁、悲观锁、死锁的区别
  • 原文地址:https://www.cnblogs.com/tootwo2/p/6388073.html
Copyright © 2011-2022 走看看