解決打包apk手動(dòng)配置測(cè)試跟正式環(huán)境的問(wèn)題

親,在開發(fā)的時(shí)候你是否遇到過(guò)丸氛,測(cè)試MM一會(huì)跟你要一個(gè)測(cè)試包或者正式包的情況,如果只是換換接口地址還好說(shuō)定续,但是有些三方的東西注冊(cè)碼也有正式環(huán)境跟測(cè)試環(huán)境之分禾锤,每次發(fā)包還要記住修改過(guò)來(lái)恩掷,這樣很容易就忘記修改而帶來(lái)不必要的麻煩。每當(dāng)這時(shí)候就感覺(jué)很蛋疼啊峭状,有沒(méi)有法子來(lái)改變這一現(xiàn)狀呢逼争,經(jīng)過(guò)幾番探索終于發(fā)掘出了一勞永逸的方法----通過(guò)Gradle來(lái)進(jìn)行配置誓焦。

首先解決手動(dòng)替換接口地址問(wèn)題

這個(gè)是根據(jù)代碼中自動(dòng)設(shè)置 debug 跟 release 包 log 打印不打印進(jìn)行的延伸,具體操作如下:
在 Android studio 的 module 的 gradle 配置文件中,在 buildTypes 節(jié)點(diǎn)下可以配置自定義參數(shù)仍翰,這里我們?cè)赿ebug版本中定義LOG_DEBUG為true歉备,在 release 版本中定義 LOG_DEBUG 為 false蕾羊。這樣在編譯的時(shí)候就會(huì)在 gradle 的編譯類BuildConfig中生成成員變量: LOG_DEBUG
若是正式環(huán)境則 LOG_DEBUG 的值為 false
若是測(cè)試環(huán)境則 LOG_DEBUG 的值為 true
如下圖所示:


QQ20161010-0@2x.png
Paste_Image.png

設(shè)置聯(lián)網(wǎng)接口的時(shí)候就如下設(shè)置:

public static final String url = BuildConfig.LOG_DEBUG?"http://192.168.01": "http://www.baidu.com";

到時(shí)候打包就自動(dòng)對(duì)應(yīng)相應(yīng)的網(wǎng)址接口帽驯。

其次解決三方在Manifest文件的配置問(wèn)題

這里使用了 gradle 在編譯時(shí)動(dòng)態(tài)設(shè)置 Android Manifest的功能龟再,通過(guò)manifestPlaceholders,我們可以在AndroidManifest中定義一個(gè)變量尼变,在build.gradle中動(dòng)態(tài)的替換掉利凑,十分方便,語(yǔ)法也十分簡(jiǎn)單嫌术。我們這里以用的融云為例:

<meta-data    
android:name="RONG_CLOUD_APP_KEY"    
android:value="${rong_cloud_app_key}" 
/>

接著哀澈,我們?cè)赽uild.gradle文件中根據(jù)不同的環(huán)境,設(shè)置生成不同appkey的apk:

buildTypes { 
debug {
 manifestPlaceholders = [rong_cloud_app_key: "你替代的內(nèi)容"]
 } 
release {   
manifestPlaceholders = [rong_cloud_app_key: "你替代的內(nèi)容"] } 
 }

注意:這里的“你替代的內(nèi)容”度气,不能為特殊關(guān)鍵詞割按,比如:TRUE,否則在Java代碼中獲取不到meta-data中的值

錯(cuò)誤實(shí)例:

manifestPlaceholders = [oem: "TRUE"]

如果你想要替換多個(gè)變量磷籍,假如你需要兩個(gè)變量要替換适荣,需要按照下面形式進(jìn)行:

<meta-data    
android:name="RONG_CLOUD_APP_KEY"    
android:value="${rong_cloud_app_key}" 
/>
<meta-data    
android:name="RONG_CLOUD_APP_SECRET"    
android:value="${rong_cloud_app_secret}" 
/>
buildTypes { 
debug {
manifestPlaceholders = [rong_cloud_app_key: "你替代的內(nèi)容",
rong_cloud_app_secret: "你替代的內(nèi)容"]
 } 
...

最后進(jìn)行打包操作

點(diǎn)擊 studio 最右側(cè)的 Gradle 按鈕,找到主項(xiàng)目下的 build 文件夾,如下圖所示:

Paste_Image.png

紅框里面是定義的打包渠道號(hào),雙擊一個(gè)就會(huì)打包该编,打好的包會(huì)放在下圖位置上:

Paste_Image.png

直接一次到位嘉赎,測(cè)試包跟正式包都有了迂曲,測(cè)試MM相要什么包就直接給就行了关霸,不用在代碼里進(jìn)行繁瑣的調(diào)試了队寇。哈哈

又可以愉快的玩耍了凡伊,呵呵

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌苍苞,老刑警劉巖,帶你破解...
    沈念sama閱讀 211,948評(píng)論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件盈简,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)餐弱,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,371評(píng)論 3 385
  • 文/潘曉璐 我一進(jìn)店門速缆,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)剧董,“玉大人,你說(shuō)我怎么就攤上這事毅臊。” “怎么了蚯撩?”我有些...
    開封第一講書人閱讀 157,490評(píng)論 0 348
  • 文/不壞的土叔 我叫張陵忆家,是天一觀的道長(zhǎng)揭芍。 經(jīng)常有香客問(wèn)我流酬,道長(zhǎng),這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,521評(píng)論 1 284
  • 正文 為了忘掉前任,我火速辦了婚禮,結(jié)果婚禮上页响,老公的妹妹穿的比我還像新娘。我一直安慰自己没陡,他們只是感情好潜腻,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,627評(píng)論 6 386
  • 文/花漫 我一把揭開白布暴心。 她就那樣靜靜地躺著弹沽,像睡著了一般娜亿。 火紅的嫁衣襯著肌膚如雪吼畏。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,842評(píng)論 1 290
  • 那天办悟,我揣著相機(jī)與錄音瑰煎,去河邊找鬼魄健。 笑死农尖,一個(gè)胖子當(dāng)著我的面吹牛滑沧,可吹牛的內(nèi)容都是我干的棚潦。 我是一名探鬼主播原环,決...
    沈念sama閱讀 38,997評(píng)論 3 408
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,741評(píng)論 0 268
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤刁赦,失蹤者是張志新(化名)和其女友劉穎宦焦,沒(méi)想到半個(gè)月后涛碑,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,203評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡毙籽,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,534評(píng)論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,673評(píng)論 1 341
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情哄芜,我是刑警寧澤失晴,帶...
    沈念sama閱讀 34,339評(píng)論 4 330
  • 正文 年R本政府宣布袱箱,位于F島的核電站了讨,受9級(jí)特大地震影響男杈,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,955評(píng)論 3 313
  • 文/蒙蒙 一坦仍、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,770評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)蚓胸。三九已至于置,卻和暖如春瞄桨,著一層夾襖步出監(jiān)牢的瞬間柱查,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,000評(píng)論 1 266
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 46,394評(píng)論 2 360
  • 正文 我出身青樓涨共,卻偏偏與公主長(zhǎng)得像火鼻,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,562評(píng)論 2 349

推薦閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見(jiàn)模式的工具(例如配置管理瀑构,服務(wù)發(fā)現(xiàn)寺晌,斷路器,智...
    卡卡羅2017閱讀 134,633評(píng)論 18 139
  • Spring Boot 參考指南 介紹 轉(zhuǎn)載自:https://www.gitbook.com/book/qbgb...
    毛宇鵬閱讀 46,773評(píng)論 6 342
  • Android 自定義View的各種姿勢(shì)1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 171,796評(píng)論 25 707
  • Gradle對(duì)于很多開發(fā)者來(lái)說(shuō)有一種既熟悉又陌生的感覺(jué),他是離我們那么近,以至于我每天做項(xiàng)目都需要他吵聪,但是他又是離...
    阿_希爸閱讀 9,573評(píng)論 10 199
  • 談?wù)刬OS內(nèi)存泄露 來(lái)自:ScorpioLin 作者:簡(jiǎn)幽
    qing1991閱讀 413評(píng)論 0 0