build.gradle文件详解

 1 apply plugin: ‘com.android.application‘//说明module的类型,com.android.application为程序,com.android.library为库
 2 android {
 3     compileSdkVersion 22//编译的SDK版本
 4     buildToolsVersion "22.0.1"//编译的Tools版本
 5     defaultConfig {//默认配置
 6         applicationId "com.nd.famlink"//应用程序的包名
 7         minSdkVersion 8//支持的最低版本
 8         targetSdkVersion 19//支持的目标版本
 9         versionCode 52//版本号
10         versionName "3.0.1"//版本名
11     }
12     sourceSets {//目录指向配置
13         main {
14             manifest.srcFile ‘AndroidManifest.xml‘//指定AndroidManifest文件
15             java.srcDirs = [‘src‘]//指定source目录
16             resources.srcDirs = [‘src‘]//指定source目录
17             aidl.srcDirs = [‘src‘]//指定source目录
18             renderscript.srcDirs = [‘src‘]//指定source目录
19             res.srcDirs = [‘res‘]//指定资源目录
20             assets.srcDirs = [‘assets‘]//指定assets目录
21             jniLibs.srcDirs = [‘libs‘]//指定lib库目录
22         }
23         debug.setRoot(‘build-types/debug‘)//指定debug模式的路径
24         release.setRoot(‘build-types/release‘)//指定release模式的路径
25     }
26     signingConfigs {//签名配置
27         release {//发布版签名配置
28             storeFile file("fk.keystore")//密钥文件路径
29             storePassword "123"//密钥文件密码
30             keyAlias "fk"//key别名
31             keyPassword "123"//key密码
32         }
33         debug {//debug版签名配置
34             storeFile file("fk.keystore")
35             storePassword "123"
36             keyAlias "fk"
37             keyPassword "123"
38         }
39     }
40     buildTypes {//build类型
41         release {//发布
42             minifyEnabled true//混淆开启
43             proguardFiles getDefaultProguardFile(‘proguard-android.txt‘), ‘proguard-project.txt‘//指定混淆规则文件
44             signingConfig signingConfigs.release//设置签名信息
45         }
46         debug {//调试
47             signingConfig signingConfigs.release
48         }
49     }
50     packagingOptions {
51         exclude ‘META-INF/ASL2.0‘
52         exclude ‘META-INF/LICENSE‘
53         exclude ‘META-INF/NOTICE‘
54         exclude ‘META-INF/MANIFEST.MF‘
55     }
56     lintOptions {
57         abortOnError false//lint时候终止错误上报,防止编译的时候莫名的失败
58     }
59 }
60 dependencies {
61     compile fileTree(dir: ‘libs‘, exclude: [‘android-support*.jar‘], include: [‘*.jar‘])   //编译lib目录下的.jar文件
62     compile project(‘:Easylink‘)//编译附加的项目
63     compile project(‘:ImageLibrary‘)
64     compile project(‘:ImageResLibrary‘)
65     compile project(‘:Ofdmtransport‘)
66     compile project(‘:PullToRefreshLibrary‘)
67     compile project(‘:RecorderLibrary‘)
68     compile project(‘:WebSocket‘)
69     compile project(‘:WidgetLibrary‘)
70     compile ‘com.nostra13.universalimageloader:universal-image-loader:1.9.3‘//编译来自Jcenter的第三方开源库
71 }
时间: 2024-11-16 13:16:12

build.gradle文件详解的相关文章

build.gradle文件详解<三>

参考:http://blog.csdn.net/baidu_31093133/article/details/51860637 build.gradle配置参数详解 //声明是Android程序 apply plugin: 'com.android.application' android { //程序在编译的时候会检查lint,有任何错误提示会停止build,我们可以关闭这个开关 lintOptions { abortOnError false //即使报错也不会停止打包 checkRelea

Android学习之基础知识二(build.gradle文件详解)

一.详解build.gradle文件 1.Android Studio是采用Gradle来创建项目的,Gradle是非常先进的构建的项目的工具,基于Groovy领域特定的语言(DSL)来声明项目配置,摒弃了传统基于XML(如Ant.Maven)的各种烦琐的配置. 2.Android项目中存在两个build.gradle文件,一个在外层,一个在app中: A.外层的build.gradle文件:当需要添加全局的项目构建配置时才修改其中的内容 jcenter():代码托管仓库,存放Android开源

JNI头文件详解(三)对象操作

JNI 中Java对象操作: 对象操作相关函数: (AllocObject,NewObject,NewObjectA,NewObjectV,GetObjectRefType,IsInstanceOf,IsSameObject) 1.对比函数特性. 1.1  AllocObject 函数和NewObject,NewObjectA,NewObjectV,之间的区别, 共同点 不同点:   AllocObject不需要调用如何构造函数产生一个Java对象.而NewObject,NewObjectA,N

Android清单文件详解(三)----应用程序的根节点<application>

<application>节点是AndroidManifest.xml文件中必须持有的一个节点,它包含在<manifest>节点下.通过<application>节点的相关属性,我们可以声明Android应用程序的相关特性.这个节点包含所有应用程序组件的节点,包括Activity,服务,广播接收器和内容提供者,并且包含了一些可能影响所有组件的属性.这些属性中的其中一些又会作为默认值而被设置到应用程序组件的相同属性上,比如icon,label,permission,pro

SpringBoot-yaml文件详解(三)

yaml简介 YMAL:以数据为中心,比json和xml更适合做配置文件.官网说yaml是一种标记语言,但又不是一种标记语言我们大家可以好好探讨一下. yaml是不是一个标记语言,每个人都有自己独到的理解. 不妨我们来看看官方文档:https://docs.spring.io/spring-boot/docs/2.1.7.RELEASE/reference/html/boot-features-external-config.html#boot-features-external-config-

MyBatis之Mapper XML 文件详解(三)-Result Maps

resultMap 元素是 MyBatis 中最重要最强大的元素.它就是让你远离 90%的需要从结果 集中取出数据的 JDBC 代码的那个东西, 而且在一些情形下允许你做一些 JDBC 不支持的事 情. 事实上, 编写相似于对复杂语句联合映射这些等同的代码, 也许可以跨过上千行的代码. ResultMap 的设计就是简单语句不需要明确的结果映射,而很多复杂语句确实需要描述它们 的关系. 你已经看到简单映射语句的示例了,但没有明确的 resultMap.比如: <select id="sel

Android.mk文件详解(转)

源:Android.mk文件详解 从对Makefile一无所知开始,折腾了一个多星期,终于对Android.mk有了一个全面些的了解.了解了标准的Makefile后,发现Android.mk其实是把真正的Makefile包装起来,做成了一个对使用者来说很简单的东西.使用它来编译程序时,不管是动态库.可执行的二进制文件,还是Jar库.APK包,只要沿着一个简单的思路来做三大步就可以了:清除旧变量,设置新变量,调用编译函数. 明白了以后,发现Makefile语法不是问题,有很多教程和高手.编译模块时

Maven pom.xml文件详解

Maven pom.xml文件详解 一.简介 POM全称是Project Object Model,即项目对象模型. pom.xml是maven的项目描述文件,它类似与antx的project.xml文件. pom.xml文件以xml的 形式描述项目的信息,包括项目名称.版本.项目id.项目的依赖关系.编译环境.持续集成.项目团队.贡献管理.生成报表等等.总之,它包含了所有的项目 信息. <project xmlns="http://maven.apache.org/POM/4.0.0&q

package-info.java文件详解

package-info.java文件详解 作者:chszs,转载需注明.博客主页:http://blog.csdn.net/chszs 一.pacakge-info.java介绍 pacakge-info.java是一个Java文件,可以添加到任何的Java源码包中.pacakge-info.java的目标是提供一个包级的文档说明或者是包级的注释. pacakge-info.java文件中,唯一要求包含的内容是包的声明语句,比如: package com.ch.service; 二.包文档 在