正確理解gradle assemble、assembleDebug疮跑、assembleRelease

前段時間弄新項目的時候需要配置打包平臺组贺,然后就研究了一下,之前由于都用Android studio 進行構(gòu)建項目祖娘,所以很少用命令行失尖,久而久之對于這些有點陌生。
先上第一張圖:

image.png

它是整個工程的一個目錄渐苏,其實也就有多少個module就有多少個build.gradle掀潮,第一個代表這整個project的build.gradle,那么咱們看看每個目錄下面都有什么呢琼富?

image.png

看到了吧仪吧,其實每個目錄下面都是一堆task,這個task 有的是Android 給你預設好的鞠眉,有的是自己的自定義的
那么我把app/build.gradle里面的代碼改一下成如下:

 buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
        dev{
            minifyEnabled false
        }

    }
    flavorDimensions "default"
    productFlavors{
        black{

        }
        blue{

        }
    }

注意 buildType 類型的debug是默認的薯鼠,你不寫也會默認存在。

上面的代碼中主要增加了 dev,productFlavors { black,blue}
那么咱們再來看看現(xiàn)在的gradle 發(fā)生了什么變化凡蚜。

image.png

是不是多出來幾種人断。再看other里面。
image.png

哇朝蜘,竟然進行了排序組合恶迈,這就是productFlavors的風味的作用了。

進入正題:實際的表現(xiàn)

1.運行 ./gradlew assemble 的結(jié)果

會在output/apk 文件夾下生產(chǎn)
app-black-debug.apk,
app-black-dev.apk,
app-black-release.apk,
app-blue-debug.apk,
app-blue-dev.apk,
app-blue-release.apk,
等6種組合

2.運行 ./gradlew assembleDebug 的結(jié)果

會在output/apk 文件夾下生產(chǎn)
app-black-debug.apk,
app-blue-debug.apk,
等2種組合

3.運行 ./gradlew assembleBlack 的結(jié)果

會在output/apk 文件夾下生產(chǎn)
app-black-debug.apk,
app-black-dev.apk,
app-black-release.apk,
等3種組合

4.運行 ./gradlew assembleBlackDebug 的結(jié)果

會在output/apk 文件夾下生產(chǎn)
app-black-debug.apk,
等1種組合

想必你也能總結(jié)出規(guī)律谱醇,如果只用assemble的話暇仲,gradle 會把 buildType 和productFlavors 組合打包,很顯然命令越清晰副渴,打的包就越精確奈附,這一塊也是多渠道打包的要點,主要是通過配置productFlavots去進行多渠道打包煮剧,bulidType 控制著打出的包是debug 類型還是release類型

還有交給大家一個小技巧斥滤,大家有沒有發(fā)現(xiàn)這樣的命令是不是很長 啊,在用的過程中這么長很不方便勉盅,gradle 為大家考慮了這件事情佑颇,大家只需要打出命令的首字母就行,比如:

./gradlew assembleRedRelease 就可以用 ./gradlew aRR 代替草娜,注意:bulidType productFlavors 里面最后不要出現(xiàn)首字母一樣的類型挑胸,不然gradle 沒法區(qū)分,我上面舉的例子就不恰當宰闰,./gradlew aBD茬贵,gralde 就區(qū)分不出 是 assembleBlackDebug 簿透、assembleBlackDev、assembleBlueDebug解藻、 assembleBlueDev

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末老充,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子舆逃,更是在濱河造成了極大的恐慌蚂维,老刑警劉巖,帶你破解...
    沈念sama閱讀 222,729評論 6 517
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件路狮,死亡現(xiàn)場離奇詭異,居然都是意外死亡蔚约,警方通過查閱死者的電腦和手機奄妨,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,226評論 3 399
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來苹祟,“玉大人砸抛,你說我怎么就攤上這事∈鞣悖” “怎么了直焙?”我有些...
    開封第一講書人閱讀 169,461評論 0 362
  • 文/不壞的土叔 我叫張陵,是天一觀的道長砂轻。 經(jīng)常有香客問我奔誓,道長,這世上最難降的妖魔是什么搔涝? 我笑而不...
    開封第一講書人閱讀 60,135評論 1 300
  • 正文 為了忘掉前任厨喂,我火速辦了婚禮,結(jié)果婚禮上庄呈,老公的妹妹穿的比我還像新娘蜕煌。我一直安慰自己,他們只是感情好诬留,可當我...
    茶點故事閱讀 69,130評論 6 398
  • 文/花漫 我一把揭開白布斜纪。 她就那樣靜靜地躺著,像睡著了一般文兑。 火紅的嫁衣襯著肌膚如雪盒刚。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,736評論 1 312
  • 那天彩届,我揣著相機與錄音伪冰,去河邊找鬼。 笑死樟蠕,一個胖子當著我的面吹牛贮聂,可吹牛的內(nèi)容都是我干的靠柑。 我是一名探鬼主播,決...
    沈念sama閱讀 41,179評論 3 422
  • 文/蒼蘭香墨 我猛地睜開眼吓懈,長吁一口氣:“原來是場噩夢啊……” “哼歼冰!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起耻警,我...
    開封第一講書人閱讀 40,124評論 0 277
  • 序言:老撾萬榮一對情侶失蹤隔嫡,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后甘穿,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體腮恩,經(jīng)...
    沈念sama閱讀 46,657評論 1 320
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,723評論 3 342
  • 正文 我和宋清朗相戀三年温兼,在試婚紗的時候發(fā)現(xiàn)自己被綠了秸滴。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,872評論 1 353
  • 序言:一個原本活蹦亂跳的男人離奇死亡募判,死狀恐怖荡含,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情届垫,我是刑警寧澤释液,帶...
    沈念sama閱讀 36,533評論 5 351
  • 正文 年R本政府宣布,位于F島的核電站装处,受9級特大地震影響误债,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜符衔,卻給世界環(huán)境...
    茶點故事閱讀 42,213評論 3 336
  • 文/蒙蒙 一找前、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧判族,春花似錦躺盛、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,700評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至辩撑,卻和暖如春界斜,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背合冀。 一陣腳步聲響...
    開封第一講書人閱讀 33,819評論 1 274
  • 我被黑心中介騙來泰國打工各薇, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 49,304評論 3 379
  • 正文 我出身青樓峭判,卻偏偏與公主長得像开缎,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子林螃,可洞房花燭夜當晚...
    茶點故事閱讀 45,876評論 2 361