主要应用位置:通过标志位改变一个view什么时候显示,或者将一些功能暂时留着但不显示也可通过标志位来区别是否显示。 也可以用于获取String 设置。
-
config.gradle中加入全局标志位
如:conf = [ is_market:true, is_show:false ]
2.在一个模块中的build.gradle 中用buildConfigField 来获取并储存值
如
defaultConfig {
minSdkVersion rootProject.ext.android.minSdkVersion
targetSdkVersion rootProject.ext.android.targetSdkVersion
versionCode rootProject.ext.android.versionCode
versionName rootProject.ext.android.versionName
//add flag upload to app market by lhw
buildConfigField "Boolean", "IS_UPLOAD_APP_MARKET", "${rootProject.ext.conf.is_upload_app_market}"//这里就是将cofig的值获取
buildConfigField "Boolean", "IS_SHOW_MINICHAT", "${rootProject.ext.conf.is_show_minichat}"//这里就是将cofig的值获取
// testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
3.在需要调用的地方 引入BuildConfig来获取值,
import com.mo.damiframework.BuildConfig; //导入模块
if (!BuildConfig.IS_UPLOAD_APP_MARKET){ //依据值判断
llt_guard_view.setVisibility(View.VISIBLE);
llt_binding_view.setVisibility(View.GONE);
}
附:buildConfigField 可以储存String
如
debug {
buildConfigField("boolean", "LOG_DEBUG", "true") //此处储存一个boolean
buildConfigField "String", "SERVER_HOST", "\"200.200.200.50/\"" //储存String
minifyEnabled true//true:启用混淆,false:不启用
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
shrinkResources false
zipAlignEnabled true
pseudoLocalesEnabled true
signingConfig signingConfigs.release
}
}
结束