一直听说Gradle很强大,只是偶尔用Android Studio创建Demo的时候看到他一次,今天抽个时间完整记录一下。

1.gradle位置

Android Studio项目创建好之后,默认有3gradle文件,分别位于:

/settings.gradle

/build.gradle

/app/build.gradle

2.gradle内容

settings.gradle 默认只有一行代码,即:

include ':app'

新创建的项目只有app一个子项目。如果在project里添加了子项目(Module),按理需要在settings.gradle里添加相应子项目名称,如:

include ':app', ':androidlibrary'

提示:当你添加一个Module后,最新版的Android Studio会自动在settings.gradle里配置好,Amazing

根目录的build.gradle 就比较丰富了,默认有三个“节点”,buildscriptallprojectstask clean

buildscript{repositories{jcenter()}dependencies{classpath'com.android.tools.build:gradle:1.3.0'}}allprojects{repositories{jcenter()}}taskclean(type:Delete){deleterootProject.buildDir}

buildscript下的第一个子“节点”是声明仓库源,默认是jcenter,之前版本则是mavenCentral,也可以两个center共存。jcenter可以理解成是一个新的中央远程仓库,兼容maven中心仓库,而且性能更优。第二个子“节点”是声明Androidgradle plugin的版本,Android Studio 1.5版默认是gradle 1.3

allprojects下是声明了所有project默认的仓库源。

task clean声明了一个任务,任务名叫clean(也可以改为其它),任务类型是Delete(也可以是Copy),就是每当修改settings.gradle文件后点击同步,就会删除rootProject.buildDir下的文件(实际上我看到的效果是清除了External Libraries里的包,然后又添加了一次)

app/build.gradle 就是默认android子项目的gradle文件了,也是三个小节点:applyandroiddependencies

applyplugin:'com.android.application'android{compileSdkVersion15buildToolsVersion'19.1.0'defaultConfig{applicationId"com.nait.picassodemo"minSdkVersion4targetSdkVersion15versionCode1versionName"1.0"}buildTypes{release{minifyEnabledfalseproguardFilesgetDefaultProguardFile('proguard-android.txt'),'proguard-rules.pro'}}productFlavors{}}dependencies{compilefileTree(dir:'libs',include:['*.jar'])compile'com.squareup.picasso:picasso:2.5.2'compile'com.squareup.okhttp:okhttp:2.5.0'compile'com.umeng.analytics:analytics:5.6.1'testCompile'junit:junit:4.12'}

appley节点:apply plugin: 'com.android.application'

以上语句中的apply是一个方法,给它传递了一个参数pluginplugin 的值是'com.android.application'。如果有多个参数,则以逗号隔开,例如:compile name: 'volley', ext: 'aar'

android节点:前面部分很好理解,从字面意思就能了解。buildTypes默认是release(也可以添加debug),minifyEnabled表示是否需要混淆,proguardFiles 表示混淆配置文件的名称。productFlavors表示多渠道包(以后深入学习后再写)。

dependencies节点:com.开头的部分是Demo项目中添加的引用包,规则是namesapce:package name:version,其它两行是项目创建后默认添加的。

当然,开发完APP也是需要进行全方位的检测:www.ineice.com


更多相关文章

  1. Android(安卓)Studio导入项目
  2. Android(安卓)Studio 项目添加或导入第三方库 jar 文件
  3. android 项目 R.java文件丢失?
  4. android菜鸟学习笔记4----android项目结构
  5. 解决Android导入新项目时Android.jar包丢失问题
  6. 开源项目之瀑布流DodoWaterFall
  7. 如何添加 android private libraries 中的包的源代码
  8. android二维码扫描(最近做的项目中用到的)
  9. Android(安卓)Studio配置打包生成自定义文件名

随机推荐

  1. Android绘图机制(五)自定义控件的官方实例
  2. Google android初级开发之 : android 模
  3. Ubuntu上编译Android内核源码
  4. android中的Context(android内核学习记录
  5. 深入Android(安卓)【一】 —— 序及开篇
  6. Android(安卓)开发技巧 - Android(安卓)6
  7. android用户界面编程技巧——如何使用Ada
  8. android中APK包的安装以及adb命令的使用
  9. 让Android应用程序支持安装到SD卡(APP2SD)
  10. Android做了一年了,回头来看看Activity