Android開發(fā)中使用Gradle管理Release/Debug版本中的各種key

我們?cè)陂_發(fā)中,如果使用高德地圖、各種統(tǒng)計(jì)等第三方SDK時(shí),一般都有兩個(gè)key值,來(lái)區(qū)分是測(cè)試還是正式版本。一般都是寫到AndroidManifest.xml中,在每次切換版本的時(shí)候手動(dòng)去改。為了方便,我們可以使用Gradle,將key值寫到build.gradle中,在AndroidManifest.xml中應(yīng)用這個(gè)值。

我工作中用到了高德地圖和騰訊統(tǒng)計(jì),具體實(shí)現(xiàn):

1.在build.gradle中分別設(shè)置Debug/Release的key

buildTypes {
     release {
          manifestPlaceholders = [AMAP_KEY_VALUE: "xxx",TA_KEY_VALUE: "xxx"]
        }
     debug {
          manifestPlaceholders = [AMAP_KEY_VALUE: "AAA",TA_KEY_VALUE: "AAA"]
        }
    }

2.在AndroidManifest.xml中設(shè)置key

 <meta-data
     android:name="TA_APPKEY"
     android:value="${TA_KEY_VALUE}" />

 <meta-data
     android:name="com.amap.api.v2.apikey"
     android:value="${AMAP_KEY_VALUE}" />

這樣在運(yùn)行的時(shí)候就會(huì)自動(dòng)選擇對(duì)應(yīng)的key值了,再也不用手動(dòng)改了(喜大普奔)

PS:manifestPlaceholders可以設(shè)置多個(gè)key,也可以設(shè)置一個(gè) ,eg:manifestPlaceholders = [AMAP_KEY_VALUE: "AAA"]

真的覺得這個(gè)功能太方便了,不過(guò)我想知道有沒有辦法在Android studio中點(diǎn)擊運(yùn)行的時(shí)候,可以直接選擇運(yùn)行Release版本或者Debug版本。知道的一定要告訴我哦
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 1.介紹 如果你正在查閱build.gradle文件的所有可選項(xiàng),請(qǐng)點(diǎn)擊這里進(jìn)行查閱:DSL參考 1.1新構(gòu)建系統(tǒng)...
    Chuckiefan閱讀 12,371評(píng)論 8 72
  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,680評(píng)論 19 139
  • 轉(zhuǎn)載注明出處:http://www.itdecent.cn/p/5255b100930e 0. 前言 完全由個(gè)人翻...
    王三的貓阿德閱讀 2,753評(píng)論 0 4
  • 這一章主要針對(duì)項(xiàng)目中可以用到的一些實(shí)用功能來(lái)介紹Android Gradle,比如如何隱藏我們的證書文件,降低風(fēng)險(xiǎn)...
    acc8226閱讀 7,972評(píng)論 3 25
  • Android 自定義View的各種姿勢(shì)1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 179,308評(píng)論 25 708

友情鏈接更多精彩內(nèi)容