Android Flavor
為了支持同一套代碼能夠生成多個(gè)版本的應(yīng)用香到,Android提供flavor來(lái)實(shí)現(xiàn)該需求。
Flavor使用
在模塊化中新增Flavor
在單一模塊的工程中蛇数,新增Flavor很簡(jiǎn)單,但是在多模塊的工程中,可能會(huì)有諸多問題啸箫。根據(jù)已經(jīng)了解的情況,模塊的依賴關(guān)系可以是一個(gè)有向無(wú)環(huán)圖(禁止環(huán)形依賴)艰毒。在架構(gòu)圖中筐高,一般約定俗成地將被依賴的模塊放到下層,依賴其他模塊的模塊放到上層丑瞧。
經(jīng)過(guò)實(shí)踐柑土,發(fā)現(xiàn)有如下規(guī)律
- 模塊化的工程中,不要求所有模塊都新增對(duì)應(yīng)的Flavor绊汹。例如稽屏,對(duì)于某些模塊,可以區(qū)分國(guó)內(nèi)/海外不同版本西乖,但是其他模塊可以不區(qū)分狐榔。
- 被依賴的模塊允許不區(qū)分flavor。例如A依賴B获雕,允許A區(qū)分國(guó)內(nèi)/海外版本薄腻,B不區(qū)分。
- 被依賴的模塊再區(qū)分flavor時(shí)届案,依賴它的模塊必須區(qū)分flavor庵楷。例如A依賴B,若B區(qū)分國(guó)內(nèi)/海外版本楣颠,則A也需要區(qū)分尽纽。