build Variants建立不同配置的app(圖文詳解)
現象描述
開發一個app避免不了在多種環境下執行,比如開發環境、測試環境、正式環境,而根據不同環境要配置不同的變數,在以前,我都是通過註釋相關程式碼實現的,顯然這樣比較麻煩。
進入正題,那麼如何可以一鍵更改配置呢?
步驟一:配置build.gradle檔案的productFlavors節點
productFlavors {
moon {//配置的名稱,可以隨便取
// 具體配置,見後面講解
}
moon_test {//配置的名稱,可以隨便取
//具體配置,見後面講解
}
... //還可以建立很多個
}
步驟二:建立不同的配置檔案
在工程src目錄下,建立以 配置名稱 為名的包,並依此建立java.com.pengkv.moon 包
-moon
-...
-build
-src
-main
-moon(配置名)
-java.com.pengkv.moon
-各種配置檔案
-moon_test(配置名)
-java.com.pengkv.moon
- 各種配置檔案(各個配置包下的對應名稱要一樣)
其中moon包下的LogUtil程式碼如下
public class LogUtil {
public static void logTag() {
Log.v("---->", "我是版本一");
}
}
moon_test包下的LogUtil程式碼如下
public class LogUtil {
public static void logTag() {
Log.v("---->", "我是版本二");
}
}
步驟三:在左側選單欄點選build Variants,並選擇相應配置的版本執行
程式碼執行時可以發現,相同的程式碼執行卻有不同結果
結果一:
結果二:
步驟四:配置AndroidManifest.xml檔案
有些時候需要在AndroidManifest.xml裡配置不同引數,比如應用名、版本號、應用ID等等,例如下圖(生成不同應用名)
這個時候首先需要對productFlavors進行詳細配置
productFlavors {
moon {
manifestPlaceholders = [BAIDU_SERVICE_VALUE: "zQDqX7GP3avIQTN0BoFSyhrF",
APP_NAME : "@string/appName"]
}
moon_test {
manifestPlaceholders = [BAIDU_SERVICE_VALUE: "kBONkZGEe0S2lYd6yOqq9MRx",
APP_NAME : "@string/appName_test"]
}
}
然後在AndroidManifest.xml引用不同配置的值
<application
android:icon="@mipmap/ic_launcher"
android:label="${APP_NAME}"//引用productFlavors裡面的配置值
android:theme="@style/AppTheme">
<activity>
//...
</activity>
</application>
附:build.gradle說明圖
相關推薦
build Variants建立不同配置的app(圖文詳解)
現象描述 開發一個app避免不了在多種環境下執行,比如開發環境、測試環境、正式環境,而根據不同環境要配置不同的變數,在以前,我都是通過註釋相關程式碼實現的,顯然這樣比較麻煩。 進入正題,那麼如何
對於maven建立spark專案的pom.xml配置檔案(圖文詳解)
不多說,直接上乾貨! http://mvnrepository.com/ 這裡,怎麼建立,見 這裡, 我重點說下spark專案,因為,對於hadoop這樣的,我已經寫了大量部落格了。 比如,我目前用得較多的spark-m
FineBI學習系列之FineBI的Windows裏安裝後的一些配置事宜(圖文詳解)
fine left text -a 得到 幹貨 圖文詳解 註冊 博客 不多說,直接上幹貨! 前期博客 第一步:需要點擊獲取激活碼 第二步:點擊註冊 註冊的
neo4j的配置檔案(圖文詳解)
#***************************************************************** # Neo4j configuration # # For more details and a complete list of settings, please
IDEA跑代碼出現Error(7,8) ***App is already defined as object App object App extends Application { 錯誤的解決辦法(圖文詳解)
機器 strong ima 分析 挖掘 extend AS 收獲 qq群 不多說,直接上幹貨! 問題現象 Error(7,8) App is already defined as object App
Hue的全局配置文件hue.ini(圖文詳解)
var mapping tcl href ron Oz httpfs restrict FQ Hue版本:hue-3.9.0-cdh5.5.4 需要編譯才能使用(聯網) 說給大家的話:大家電腦的配置好的話,一定要安裝cloudera manager。畢竟是一家人的。同時,
對於maven創建spark項目的pom.xml配置文件(圖文詳解)
mapr cati ID encoding pil tar error: 而是 releases 不多說,直接上幹貨! http://mvnrepository.com/ 這裏,怎麽創建,見 這裏, 我重點說下spa
全網最詳細的hive-site.xml配置文件裏添加<name>hive.cli.print.header</name>和<name>hive.cli.print.current.db</name>前後的變化(圖文詳解)
xml配置 note 個人博客 default 詳情 公眾 class 人生苦短 CA 不多說,直接上幹貨! 比如,你是從hive-default.xml.template,復制一份,改名為hive-site.xml 一
全網最詳細的hive-site.xml配置文件裏如何添加達到Hive與HBase的集成,即Hive通過這些參數去連接HBase(圖文詳解)
out 開源精神 http FN image ava ext 必須 .cn 不多說,直接上幹貨! 一般,普通的情況是 <configuration> <property>
Tomcat使用和環境配置(圖文詳解)
一.下載Tomacat Tomcat 8.5 下載 .建議下載 zip 檔案 二.環境配置 1.前提條件:java環境配置 Java 安裝+環境配置(圖文詳解) 2.修改系統變數 ,新增 CATAP
Java 安裝+環境配置(圖文詳解)
Java 安裝篇
利用maven專案建立一個web專案工程(圖文詳解)
最近正開始學習java,老師佈置的第一個作業便是用maven專案建立一個web專案工程,不會,跑去百度了半天,跳出來的全是我們csdn的教程,但到建立資源包的時候就沒法跟著做了,因為顯示已存在,沒法跟著建立了,那些文章基本一樣的講法,都是預設能建立成功,很煩,於是又繼續找了半天,終於在部落格園找到了
全網最詳細的一個超級好用的命令列工具【Cmder】的安裝之後的一些配置(圖文詳解)
不多說,直接上乾貨! 1、修改命令提示符λ為$ 首先,我們看到 進入解壓後的cmder的目錄,進入vendor,開啟init.bat檔案。 修改第15行的程式碼 @prompt $E[1;32;40m$P$S
Windows下的Jdk 1.8*安裝並配置(圖文詳解)
不多說,直接上乾貨! 簡單說下,jdk1.8*的下載,見http://www.cnblogs.com/zlslch/p/5658383.html 雙擊jdk-8u60-windows-x64.exe執行程式 歡迎使用Java SE開發工具包8 Update 6
Windows下的Jdk 1.7*安裝並配置(圖文詳解)
不多說,直接上乾貨! 很多人很少去想,為什麼在windows下,安裝完Jdk的安裝包之後,還需要去配置環境變數,只是知道要這麼去做,沒有想過為什麼要去這麼做? 答:由於java是平臺無關的 ,安裝jdk時java不會自動設定路徑,也不會修改登錄檔,需要使用者自己設定環境變數,但不需
Git學習系列之Windows上安裝Git之後的一些配置(圖文詳解)
不多說,直接上乾貨! 前面部落格 第一次使用Git時,需要對Git進行一些配置,以方便使用Git。 不過,這種配置工作只需要進行一次便可,日後對Git進行升級時,會沿用現在的配置。 1、Git配置使用者資訊 配置使用者資
Windows 7作業系統下Apache的安裝與配置(圖文詳解)
This is the main Apache HTTP server configuration file. It contains the # configuration directives that give the server its instructions. # See <UR
用maven來建立scala和java專案程式碼環境(圖文詳解)(Intellij IDEA(Ultimate版本)、Intellij IDEA(Community版本)和Scala IDEA for Eclipse皆適用)(博主推薦)
不多說,直接上乾貨! 為什麼要寫這篇部落格? 首先,對於spark專案,強烈建議搭建,用Intellij IDEA(Ultimate版本),如果你還有另所愛好嘗試Scala IDEA for Eclipse,有時間自己去玩玩。但最好追隨大流。 對於hadoop專案,強烈建議用
Windows 7作業系統下PHP 7的安裝與配置(圖文詳解)
[PHP] ;;;;;;;;;;;;;;;;;;; ; About php.ini ; ;;;;;;;;;;;;;;;;;;; ; PHP's initialization file, generally called php.ini, is responsible for ; conf
Scala IDEA for Eclipse裡用maven來建立scala和java專案程式碼環境(圖文詳解)
這篇部落格 是在Scala IDEA for Eclipse裡手動建立scala程式碼編寫環境。 本博文,教大家,用maven來建立。 第一步:安裝scala外掛 因為,我win7下的scala環境是2.10.4 所以,選擇下載的