標籤:android c style class blog code
自從13年Google I/O大會上推出了Android Studio,我就逐步將開發工作從Eclipse轉向了Android Studio,也越來越嫌棄老態龍鐘的Eclipse。相比較而言,Android Studio無論從運行速度上還是對於Android開發的支撐上都完爆Eclipse;前者極具科技感的UI更是牢牢抓住了我的心!:)
話不多說,先上張碉堡了的:
Android Studio預設採用Gradle編譯項目;Gradle基於Groovy語言,Groovy是一種運行於JVM的動態語言,文法與Java類似,並且可以在Groovy項目中引用Java代碼;這使得Java程式員可以很容易的定製Gradle編譯邏輯。
我們先看看Gradle的檔案結構:
整個Project(AndroidStudioSample)的settings.gradle:
1 include ‘:app‘, ‘:library‘
整個Project(AndroidStudioSample)的build.gradle:
// Top-level build file where you can add configuration options common to all sub-projects/modules.buildscript { repositories { mavenCentral() } dependencies { classpath ‘com.android.tools.build:gradle:0.10.+‘ // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files }}allprojects { repositories { mavenCentral() }}
主moudle(app)的build.gradle
1 apply plugin: ‘android‘ 2 3 android { 4 compileSdkVersion 19 5 buildToolsVersion "19.1.0" 6 7 defaultConfig { 8 packageName "com.baron.android.app" 9 minSdkVersion 910 targetSdkVersion 1911 versionCode 112 versionName "1.0"13 }14 buildTypes {15 release {16 runProguard false17 proguardFiles getDefaultProguardFile(‘proguard-android.txt‘), ‘proguard-rules.pro‘18 }19 }20 }21 22 dependencies {23 compile fileTree(dir: ‘libs‘, include: [‘*.jar‘])24 compile ‘com.android.support:appcompat-v7:19.1.0‘25 compile ‘com.android.support:support-v4:19.1.0‘26 compile ‘com.android.support:appcompat-v7:19.1.0‘27 compile ‘com.android.support:support-v4:19.1.0‘28 compile ‘com.android.support:appcompat-v7:19.+‘29 }
submodule(library)的build.gradle:
apply plugin: ‘android-library‘android { compileSdkVersion 19 buildToolsVersion "19.1.0" defaultConfig { packageName "com.baron.android.library" minSdkVersion 8 targetSdkVersion 19 versionCode 1 versionName "1.0" } buildTypes { release { runProguard false proguardFiles getDefaultProguardFile(‘proguard-android.txt‘), ‘proguard-rules.pro‘ } }}dependencies { compile fileTree(dir: ‘libs‘, include: [‘*.jar‘]) compile ‘com.android.support:appcompat-v7:19.+‘ compile ‘com.android.support:appcompat-v7:19.+‘}
以上是一個project中基本的settings.gradle和build.gradle檔案內。
settings.gradle檔案中的include ‘:app‘, ‘:library‘指明了AndroidStudioSample這個Project包含了app和library兩個module;
build.gradle主要分為四部分:apply plugin、buildscript、android和dependencies;
1、apply plugin指明了使用的外掛程式,apply plugin:"android"表示這是一個android項目,apply plugin:"android-library"表明了這是一個Android Lib項目;
2、buildscript{...}這一塊的內容定義了編譯環境,比如依賴的gradle版本等;
3、android{...}這部分定義了項目參數,比如包名、版本號碼、SDK版本、buildTypes、signingConfigs、productFlavors等等;
4、dependencies{...}定義了依賴。
先說說dependencies,我們常見的依賴主要有三種:
1 dependencies {2 compile fileTree(dir: ‘libs‘, include: [‘*.jar‘])//本地jar包依賴3 compile ‘com.android.support:appcompat-v7:19.1.0‘//從Maven倉庫擷取的依賴包,下同4 compile ‘com.android.support:support-v4:19.1.0‘5 compile ‘com.android.support:appcompat-v7:19.1.0‘6 compile ‘com.android.support:support-v4:19.1.0‘7 compile ‘com.android.support:appcompat-v7:19.+‘8 compile project(‘:library‘)//對其他Lib項目的依賴,比如我們這個項目中的module library9 }
好了,今天先寫到這,後面再繼續 :)