2020-12-9 Android agrega banderas para juzgar el camino (desarrollo de componentes)

Posición de la aplicación principal: use el bit de bandera para cambiar cuando se muestra una vista, o deje algunas funciones temporalmente pero no se muestren, y también puede usar el bit de bandera para distinguir si se muestran. También se puede usar para obtener configuraciones de cadena.

  1. Agregue banderas globales en config.gradle
    como:

      conf = [
             is_market:true,
             is_show:false 
     ]
    

2. Use buildConfigField en build.gradle en un módulo para obtener y almacenar valores

Como

		 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. Introduzca BuildConfig donde necesite llamar para obtener el valor,

import com.mo.damiframework.BuildConfig; // Módulo de importación

if (!BuildConfig.IS_UPLOAD_APP_MARKET){ //依据值判断
            llt_guard_view.setVisibility(View.VISIBLE);
            llt_binding_view.setVisibility(View.GONE);
        }

Adjunto: buildConfigField puede almacenar String

Como

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
        }
    }

Fin

Supongo que te gusta

Origin blog.csdn.net/weixin_41422638/article/details/110933789
Recomendado
Clasificación