Android開發:《Gradle Recipes for Android》閱讀筆記(翻譯)3.1——使用Build Types

來源:互聯網
上載者:User

標籤:方法   自動   cat   and   bug   html   ini   type   pes   

問題:

你想要自訂debug和release的build types,並且建立一些新的types。

解決方案:

使用buildTypes塊配置build types。

討論:

build type決定了app如何被打包。預設的,android的gradle外掛程式支援兩種build type:debug和release。兩種都在模組的build.gradle檔案中的buildTypes塊下定義。在新的項目下的buildTypes塊如下:

例子中值顯示了release的build,但是想要編輯預設配置可以很容易的增加debug塊。每個塊都可以支援一些列的屬性。完整的屬性和方法可以在http://google.github.io/android-gradle-dsl/current/index.html上查看。

在release裡面,minifyEnaled和自動去除包裡面沒有用到的資源有關。如果設定為true,gradle也會去除沒有用到的依賴庫。這隻有在shrinkrResources屬性也被設定為true的時候才生效。

更多的細節可以查看https://developer.android.com/studio/build/shrink-code.html頁面。

在buildtypes裡面還有個屬性叫debuggable。debug builds自動化佈建debuggable為true,其他builds都預設為false。

為了在同一個裝置上安裝不同build types的同一app,Android必須能夠區分他們的應用ID。applicationIDsuffix屬性可以允許gradle產生多個擁有不同id的apk。

android {buildTypes {        debug {            applicationIDsuffix ‘.debug‘            versionNameSuffix ‘-debug‘        }    } }

現在同一個裝置上可以同時安裝release和debug版本的app。如果你能看到裝置配置,在Apps裡面,你可以看到debug和release版本是同一個app。

如果要區分它們,可以分別選擇每個版本在“App info”設定裡面查看完整的版本名。

 

Android開發:《Gradle Recipes for Android》閱讀筆記(翻譯)3.1——使用Build Types

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.