谷歌官方推荐使用Android studio进行Android开发,而且已经不再对eclipse进行维护和更新,那么熟练使用Android Studio对开发Android程序来说至关重要,而Android Studio使用的是Gradle构建项目,之前很少接触过gradle,只知道用它就行Android程序打包,这几天对gradle进行了学习,在这里做一下笔记。参考http://google.github.io/android-gradle-dsl/current/index.html。

      Gradle是一种依赖管理工具,基于Groovy语言,面向Java应用为主,它抛弃了基于XML的各种繁琐配置,取而代之的是一种基于Groovy的内部领域特定(DSL)语言。

      从Android-gradle的官网中,我们可以看到Android gradle大致分为三大块,分别是App模块,lib模块和测试模块,从我们构建的Android应用自动生成的gradle来看,大概有两个重要的一个是app的gradle一个是项目的gradle,也就是两大部分,一个是Project的build.gradle另一块是Module的build.gradle,module包括app,library等,每个module都有一个build.gradle文件,但是apply plugin不一样,如果是主程序是:com.android.application,如果是作为lib则是com.android.library。这个apply plugin只要配置的是用什么来编译,已经编译成什么,如果是java程序,那么则会是  java。

       Android-gradle的三大类型根据apply plugin一一对应,AppExtension 就是主程序类型对应的就是  com.android.application;LibraryExtension自然就是com.android.library,而TestExtension就是test了。从整体来看就是这三大类型。

       我们分析一下gradle的具体内容,gradle基本是配置文件,里面配置着android 的各种信息,包括gradle本身加载等都是在gradle的配置文件的。从Android工程来看,有个专门的gradle文件夹,里面是gradle的wrapper,包括一个jar包和一个配置文件,我们重点看一下配置文件gradle-wrapper.properties:

distributionBase=GRADLE_USER_HOMEdistributionPath=wrapper/distszipStoreBase=GRADLE_USER_HOMEzipStorePath=wrapper/distsdistributionUrl=https\://services.gradle.org/distributions/gradle-2.4-all.zip
可以看到里面声明了gradle的目录与下载路径以及当前项目使用的gradle版本,这些默认的路径我们一般不会更改的,但是这个文件里指明的gradle版本不对也是很多导包不成功的重要原因。



更多相关文章

  1. 4.2.2.5 Android如何检测网络的类型为3G、2G、wap、wifi
  2. Android架构分析之LOG模块
  3. Android之EditText指定类型数据
  4. 判断手机类型
  5. Android WiFi 架构总览(模块及接口)
  6. JS判断客户端类型(ipad,iphone,android)
  7. android Intent打开各种类型文件((PDF、word、excel、ppt、chm)
  8. Android回调——Android模块化编程
  9. Android Wifi模块分析(七)

随机推荐

  1. android:用getIdentifier()获取资源Id
  2. 上官网学android之五(Managing the Activi
  3. Android(安卓)MIFARE读写器详解2
  4. android 自定义命名空间
  5. 搬砖:深入浅出 - Android系统移植与平台开
  6. Android(安卓)Glide图片加载框架图片变色
  7. android 客户端上传到第三方应用市场
  8. ImageLoader源码解析
  9. adb shell 基本命令
  10. Android(安卓)有些视频设置为视频壁纸后