2019年1月3日 星期四

Android 基本 gradle 使用

發現以前寫的 App 幾乎很少使用到 gradle 的內容,沒想到裡面有這麼多好東西@@,對不起前公司XD

以下紀錄皆在 Module 層的部分



變數聲明

可用來統一管理版本號


全局變數生成

紅線部分聲明String變數,字串要使用反斜線保留雙引號或是外面再包單引號

布林變數在java中調用方式

資源字串生成方式

紅線部分為宣告變數,注意這邊的名稱不能和res xml中已存在字串同名

使用場景基本上是因應 debug 跟正式版需要的參數不同而定,下面針對更多條件區分可以使用 productFlavors,產生各種風味。


遇到需要建很多版本的方法


buildTypes

先說 buildTypes,基本上我只使用預設的 release 跟 debug ,據說自己在新增種類會有一些坑要踩,這邊需要變更的變數就使用上面的技巧,需要改變 app名稱或 icon 之類的則使用 manifestPlaceholders ,它配合 manifest 的佔位符可以快速替換參數。
某個版本需要建立不同的app 名稱,使用佔位符替換 label


輸入相對應的參數即可


修改 package 名稱就可以在手機上裝不同版本的 app ,超級棒

從哪裡選擇建立的版本
在 AS 左下角相當不起眼的地方,天哪我怎麼開發兩年才知道...


一般沒有多設定的 app 預設就是 release 跟 debug,前面冠一個 testing 是我多建立一個風味。

productFlavors

可以依照喜好多增加許多的風味。
這張圖看 productFlavors 跟 flavorDimensions

設定 productFlavors 就要設定 flavorDimensions ,他們的關係如下圖,每個種類都需要搭配dimension ,最後可以建立的版本數 = 相同的dimension 數互乘再乘以 2(debug & release),可以自己體會下。


(111*2)*(222*1)*2=4


(111*2)*(222*2)*(333*1)*2=8

真的是非常有趣呢>.^



沒有留言:

張貼留言