Android Gradle Build

來源:互聯網
上載者:User

從學校出來一隻使用Ant編譯 ant寫指令碼有些麻煩,不是很簡單,感覺依賴還行。速度還不錯。很久以前大牛想我推薦gradle ,這個比ant好用多了,現在確實是,那時候gradle還沒在在android裡正式支援,

  前幾天更新ant 指令碼 突然覺得我應該try一下,有些路不能直著走,曲線救國嘛,用多了自己體會到,因為需求本來想重新修改 jar 源碼下載完了,打算測試下,發現依賴不滿足 然後maven上沒有這個jar。罷休了,更新下源碼,網路不給力,老逾時。

在項目上右鍵匯出 如 選擇 產生 Gradle build files

接下來選擇要產生的項目 然後完成

然後開啟build.gradle  預設產生的是com.android.tools.build:gradle:0.4  修改為 com.android.tools.build:gradle:0.4.2 現在最新的庫,可以在maven庫上查一下

buildscript {    repositories {        mavenCentral()    }    dependencies {        classpath 'com.android.tools.build:gradle:0.4.2'//依賴 必須的 目前是0.4.2 詳情到google看文檔    }}apply plugin: 'android'dependencies {    compile fileTree(dir: 'libs', include: '*.jar')//編譯libs下的jar 都懂}android {    compileSdkVersion 8    buildToolsVersion "17.0.0"buildTypes {//設定debug release等資訊release {runProguard trueproguardFile getDefaultProguardFile('proguard-android.txt')
       signingConfig  signingConfigs.myConfig //設定簽名配置}}signingConfigs {//簽名資訊 可以自訂很多debug {storeFile file("debug.keystore")}myConfig {storeFile file("debug.keystore")storePassword "android"keyAlias "androiddebugkey"keyPassword "android"}}    sourceSets {        main {//編譯配置,看源碼吧,文檔挺少的            manifest.srcFile 'AndroidManifest.xml'            java.srcDirs = ['src']            resources.srcDirs = ['src']            aidl.srcDirs = ['src']            renderscript.srcDirs = ['src']            res.srcDirs = ['res']            assets.srcDirs = ['assets']        }        instrumentTest.setRoot('tests')    }//
//productFlavors 這個就是渠道包,ant其實也能做,這個更強大  一個flavor1 就是一個包,包名不同,版本號碼之類的

productFlavors {flavor1 {packageName "com.example.flavor1"versionCode 20}flavor2 {packageName "com.example.flavor2"minSdkVersion 14}}}

 

編譯使用 gradle build 會編譯debug 和簽名包 速度還行,build apk目錄下是各個包,我沒放keystore 所以沒有簽名

使用gradle 很多時候你需要對流程做控制,需要用鉤子,很多時候需要匯入ant指令碼 很簡單 ant.importBuild 'build.xml' 直接匯入指令碼然後再gradle註冊task 就可以直接調用了,剛開始研究,很強大 gradle 官網上有一本圖書 可以免費下載,英文版的,寫的挺簡單,想研究的可以看一下http://tools.android.com/tech-docs/new-build-system/user-guide#TOC-Build-Types google的文檔,不是很全,很多沒有,還是google
搜尋吧 會groovy的應該很簡單,熟悉之後感覺很好用的,有些東西直接從ant import過來了,沒再重寫,有些東西重新起來還是比較複雜的

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.