欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

關(guān)于A(yíng)ndroid多渠道打包的進(jìn)階知識(shí)

 更新時(shí)間:2021年08月19日 10:08:33   作者:SongSenior  
前一篇文章主要介紹了關(guān)于A(yíng)ndroid程序的多渠道打包方法,這一篇文章介紹了多渠道打包的進(jìn)階知識(shí),還不會(huì)的同學(xué)快進(jìn)來(lái)學(xué)習(xí)下吧,建議收藏以防迷路

多渠道打包進(jìn)階知識(shí)

文章開(kāi)始前,先看一下下面這種情況:

android {  
  productFlavors {  
      //100 個(gè)多渠道配置  
  }
//多渠道簽名的配置
  signingConfigs {
     xiaomi {
        storeFile file("../xiaomi.keystore")
        storePassword 'xiaomi'
        keyAlias 'xiaomi'
        keyPassword 'xiaomi'
        v1SigningEnabled true
        v2SigningEnabled true
     }
     huawei {
        storeFile file("../huawei.keystore")
        storePassword 'huawei'
        keyAlias 'huawei'
        keyPassword 'huawei'
        v1SigningEnabled true
        v2SigningEnabled true
     }
  }
  buildTypes {
       debug {
//        debug這里設(shè)置不起作用,可能是編譯器的問(wèn)題?
//         productFlavors.xiaomi.signingConfig signingConfigs.test
//         productFlavors.huawei.signingConfig signingConfigs.test
       }
       release {
           productFlavors.xiaomi.signingConfig signingConfigs.xiaomi
           productFlavors.huawei.signingConfig signingConfigs.huawei
           //....100 個(gè)簽名配置
       }
  }
//不同渠道不同資源文件配置
  sourceSets{
      xiaomi.res.srcDirs 'src/main/res-xiaomi'
      huawei.res.srcDirs 'src/main/res-huawei'
      xxx.res.srcDirs 'src/main/res-xxx'
      xxx.res.srcDirs 'src/main/res-xxx'
      xxx.res.srcDirs 'src/main/res-xxx'
      //....100 個(gè)資源文件配置
  }
//不同渠道不同的依賴(lài)文件
  dependencies {
      xiaomiApi('xxxxxxx')
      huaweiImplementation('xxxxxxxx')
      xxxApi('xxxxxxx')
      xxxApi('xxxxxxx')
      xxxApi('xxxxxxx')
      //....100 個(gè)渠道不同依賴(lài)配置
  }    
}

不難發(fā)現(xiàn),當(dāng)渠道比較多的時(shí)候,不同渠道不同的配置就會(huì)很繁瑣,有沒(méi)有更方便的方法呢?答案是肯定的。

資源文件配置

sourceSets{
    def sets = getSourceSets()//獲取資源設(shè)置集合
    productFlavors.all{//遍歷多渠道
        if('huawei'.equals(name))//針對(duì)特殊的渠道做特殊處理
          sets.getByName(name).res.srcDir 'src/main/res-xxx'
        else
          sets.getByName(name).res.srcDir 'src/main/res-'+name
        //相當(dāng)于 xiaomi.res.srcDir 'src/main/res-xiaomi'
        //      huawei.res.srcDir 'src/main/res-huawei'
        //      .....
    }
}

依賴(lài)配置

def dependenMap =[xiaomi: 'xiaomi依賴(lài)',
                  huawei: 'huawei依賴(lài)',
                  ...
                  xxx: 'xxx 依賴(lài)']
dependencies{
    productFlavors.all{
        if('huawei'.equals(name))//針對(duì)特殊的渠道做特殊處理
           dependencies.add(name+"Implementation",project(dependenMap[name]))
        else
           dependencies.add(name+"Api",project(dependenMap[name]))
        
        //xiaomiApi('xiaomi依賴(lài)')
        //huaweiImplementation('xiaomi依賴(lài)')
        //xxxxApi('xxx依賴(lài)')
    }
}

簽名配置

signingConfigs {
    xiaomi{
        storeFile file("../xiaomi.keystore")
        storePassword 'xiaomi'
        keyAlias 'xiaomi'
        keyPassword 'xiaomi'
        v1SigningEnabled true
        v2SigningEnabled true
    }
    huawei{
        storeFile file("../xiaomi.keystore")
        storePassword 'xiaomi'
        keyAlias 'xiaomi'
        keyPassword 'xiaomi'
        v1SigningEnabled true
        v2SigningEnabled true
    }
    ....更多簽名配置
}
buildTypes {
    debug {
        
    }
    release {
         productFlavors.all {
             if('huawei'.equals(name))//針對(duì)特殊的渠道做特殊處理
               productFlavors[name].signingConfig signingConfigs.xxx       
             else
               productFlavors[name].signingConfig signingConfigs[name]       
         }
    }
}

到此這篇關(guān)于關(guān)于A(yíng)ndroid多渠道打包的進(jìn)階知識(shí)的文章就介紹到這了,更多相關(guān)Android多渠道打包進(jìn)階內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 簡(jiǎn)單實(shí)現(xiàn)安卓里百度地圖持續(xù)定位

    簡(jiǎn)單實(shí)現(xiàn)安卓里百度地圖持續(xù)定位

    本文主要介紹了在安卓的百度地圖開(kāi)發(fā)里面簡(jiǎn)單實(shí)現(xiàn)持續(xù)定位的方法,具有一定的參考價(jià)值,下面跟著小編一起來(lái)看下吧
    2017-01-01
  • Android仿Win8界面開(kāi)發(fā)

    Android仿Win8界面開(kāi)發(fā)

    這篇文章主要介紹了Android仿Win8界面開(kāi)發(fā)的實(shí)例代碼,將要模仿的Win8界面的一個(gè)個(gè)設(shè)計(jì),分割成一個(gè)一個(gè)的方塊,感興趣的小伙伴們可以參考一下
    2015-12-12
  • Android中雙擊返回鍵退出應(yīng)用實(shí)例代碼

    Android中雙擊返回鍵退出應(yīng)用實(shí)例代碼

    本篇文章主要介紹了Android中雙擊返回鍵退出應(yīng)用實(shí)例代碼,具有一定的參考價(jià)值,有興趣的可以了解一下。
    2017-03-03
  • 詳解用flutter制作上班摸魚(yú)應(yīng)用

    詳解用flutter制作上班摸魚(yú)應(yīng)用

    本文主要介紹了用flutter制作上班摸魚(yú)應(yīng)用,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-03-03
  • Android生成二維碼工具類(lèi)封裝及使用

    Android生成二維碼工具類(lèi)封裝及使用

    最近公司業(yè)務(wù)上有個(gè)生成二維碼圖片的需求(Android端),之后筆者在網(wǎng)上查閱了一些資料,實(shí)現(xiàn)了這個(gè)功能,這篇文章主要給大家介紹了關(guān)于A(yíng)ndroid生成二維碼工具類(lèi)封裝及使用的相關(guān)資料,需要的朋友可以參考下
    2024-04-04
  • Android studio設(shè)置指定的簽名文件教程

    Android studio設(shè)置指定的簽名文件教程

    這篇文章主要介紹了Android studio設(shè)置指定的簽名文件教程,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-03-03
  • 在Flutter中正確處理文本縮放的解決方案

    在Flutter中正確處理文本縮放的解決方案

    這篇文章主要介紹了在Flutter中正確處理文本縮放的解決方案,本教程的結(jié)構(gòu)首先介紹最簡(jiǎn)單且最有影響力的解決方案,后面的部分涵蓋了較難實(shí)施且總體影響較小的解決方案,但它們對(duì)于解決特定情況很有用,需要的朋友可以參考下
    2024-06-06
  • Android應(yīng)用中使用ContentProvider掃描本地圖片并顯示

    Android應(yīng)用中使用ContentProvider掃描本地圖片并顯示

    這篇文章主要介紹了Android應(yīng)用中使用ContentProvider掃描本地圖片并顯示的方法,比調(diào)用本地圖庫(kù)的方法更加靈活和可定制,需要的朋友可以參考下
    2016-04-04
  • Android畫(huà)個(gè)時(shí)鐘玩玩

    Android畫(huà)個(gè)時(shí)鐘玩玩

    這篇文章主要向大家介紹了Android畫(huà)時(shí)鐘的方法,內(nèi)容很詳細(xì),分享了每一個(gè)制作步驟,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-01-01
  • Android Compose實(shí)現(xiàn)聯(lián)系人列表流程

    Android Compose實(shí)現(xiàn)聯(lián)系人列表流程

    聲明式UI,更簡(jiǎn)單的自定義,實(shí)時(shí)帶交互的預(yù)覽功能Compose并不是類(lèi)似于Recyclerview的高級(jí)控件,而是直接拋棄了View,ViewGroup那套東西,從上到下魯了一套全新的框架,直白點(diǎn)說(shuō)就是它的渲染機(jī)制,布局機(jī)制,觸摸算法,以及UI具體寫(xiě)法全都是新的
    2023-03-03

最新評(píng)論