• 忘掉天地
  • 仿佛也想不起自己
bingliaolongBingliaolong  2019-10-02 05:53 Aet 隐藏边栏 |   抢沙发  0 
文章评分 0 次,平均分 0.0

build.gradle

不同于Eclipse,Android Studio是通过Gradle来构建项目奖的
Gradle是一个非常先进的项目构建工具,它使用了一种基于Groovy的领域特定语言来声明项目设置,摒弃了传统基于XML的各种繁琐配置

两个build.gradle


  • 外层的build.gradl文件

    首先:
    两处repositories的闭包声明了jcenter()这行配置
    jcenter()是一个代码托管仓库,很多Android开源项目都会把代码托管到jcenter()上,声明了这行配置之后,我们就可以在项目中轻松引用任何jcenter()上的开源项目了
    接下来:
    dependencies闭包中声明了一个Gradle插件
    Gradle并不是专门为构建Android项目而开发的,Java,C++等很多项目都可以使用Gradle来构建。
    因此,如果我们想要使用Gradle来构建Android项目,需要声明com.android.tools.build:gradle:2.2.0这个插件

  • app目录下的build.gradle文件

    第一行:
    应用了一个插件

  • com.android.application
    • 表示这是一个应用程序模块
    • 可以直接运行
  • com.android.library
    • 表示这是一个库模块
    • 只能作为代码库依赖于别的应用程序模块来运行
      Android闭包:
      可以配置项目构建的各种属性
  • compileSdkVersion
    • 指定项目的编译版本
  • buildToolsVersion
    • 指定项目构建工具的版本
  • defaultConfig
    • 对项目的更多细节进行配置
  • applicationId
    • 用于指定项目的包名
  • minSdkVersion
    • 用于指定项目最低兼容的Android系统版本
  • targetSdkVersion
    • 指定的值表示你在该目标版本上已经做过了充分的测试,系统将会为你的应用程序启用一些最新的功能和特性
  • versionCode
    • 指定项目的版本号
  • versionName
    • 指定项目的版本名
  • buildTypes闭包
    • 用于指定生成安装文件的相关配置
    • 通常会有两个自闭包
  • debug
    • 用于指定生成测试版安装文件的配置
  • release
    • 用于指定生成正式版安装文件的配置
      release包的内容
  • minifyEnabled
    • true表混淆
    • flase表不混淆
  • proguardFiles
    • 用于指定混淆时使用的规则文件
      这里指定了两个文件:
  • proguard-rules.txt
    • 在Android SDK目录下,里面时所有项目通用的混淆规则
  • proguard-rules.pro
    • 在当前项目的根目录下,里面可以编写当前项目特有的混淆规则
    • dependencies闭包:
    • 指定当前项目所有的依赖关系
    • 通常会有三种依赖关系:
      • 本地依赖
        • 可以对本地的jar包或目录添加依赖关系
      • 库依赖
        • 可以对项目中的库模块添加依赖关系
      • 远程依赖
        • 可以对jcenter库上的开源项目添加依赖关系
          示例代码:
          第一行:
        • compile fileTree是一个本地依赖声明
          第二行:
        • com.android.support:appcompat-v7:24.2.1是一个标准的远程依赖库格式
          第三行:
        • testCompile用于声明测试用例库

本文为原创文章,版权归所有,欢迎分享本文,转载请保留出处!

bingliaolong
Bingliaolong 关注:0    粉丝:0 最后编辑于:2021-11-21
Everything will be better.

发表评论

表情 格式 链接 私密 签到
扫一扫二维码分享