您的位置:首页 > 移动开发 > Android开发

Android Studio中,gradle、AndroidManifest.xml简介、作用

2016-09-01 15:44 381 查看
gradle
简介:

Android Studio中,gradle是一种基于Apache和Apache Maven概念的项目自动化构建工具,是Android Studio默认的build工具,是一个依赖管理、自动化编译测试部署打包工具。它使用一种基于Groovy的特定领域语言来声明项目的设置,而不是传统的xml。

依赖管理简单的说就是你只要写一行代码,它就可以帮你把jar、aar包下载下来并能被当前工程使用(这个有点类似于iOS中的CocoaPods)。

自动化构建就是gradle可以通过一些命令去执行一些特有的任务,例如编译、测试、打包等等。

作用:

通过Android Studio创建的Android项目,都会生成三个gradle文件,分别为build.gradle(在app文件夹下),build.gradle(在工程目录下),settings.gradle(在工程目录下)。

build.gradle(app文件夹):这个gradle可以设置compileSDKVersion、buildToolsVersion、minSDKVersion、targetSDKVersion、versionCode,以及添加jar包依赖,代码如下:

apply plugin: 'com.android.application'

android {
compileSdkVersion 19
buildToolsVersion "21.0.0"
defaultConfig {

applicationId "com.***.myapplication"
minSdkVersion 19
targetSdkVersion 19
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
productFlavors {
}
}

dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
compile files('libs/mpandroidchartlibrary-2-2-4.jar')
compile files('libs/butterknife-7.0.1.jar')
}

build.gradle(项目文件夹下):可以配置gradle脚本自身需要使用的资源,可以声明资源包括依赖项、第三方插件、maven仓库地址等。代码如下:

// Top-level build file where you can add configuration options common to all sub-projects/modules.

buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:2.1.0'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
repositories {
mavenCentral()
}

allprojects {
repositories {
jcenter()
}
}

task clean(type: Delete) {
delete rootProject.buildDir
}

settings.gradle:当项目只有一个module的时候,仅仅只有一句话,如果你项目中有多个module存在的时候,就可以选择包含哪些进行编译。代码如下:

include ':app'


AndroidManifest.xml

简介:

这个文件是每个Android程序中必须的文件。它位于整个项目的根目录,描述了package中的组件,各自实现的类,能被处理的数据和启动位置。除了能声明程序中的Activity、ContentProviders、Service、Intent Receive同时还能指定permissions和instrumentation(安全控制和测试)。同时还是可以设置程序图标、程序名称等。

参考链接:
http://www.2cto.com/kf/201501/366464.html http://www.cnblogs.com/pilang/archive/2011/04/20/2022932.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息