文章出處
文章列表
應用場景
通常情況下我們的apps發布后也就是release模式下log是不顯示的,debug模式下是顯示log的,但是在特殊情況下我們測試release包的時候需要log的時候,就無法使用BuildConfig.DEBUG來達到要求,因為在release模式下自動設置為false,debug模式下是true,這個時候我們需要自定義可控制的log開關。
Android Studio 對應的BuildConfig.java位置
在Studio中生成的目錄: /app/build/generated/source/buildConfig/ 文件下的產品目錄里面,找到想要的包名下會自動生成BuildConfig.java文件。我們可以看看下release模式下該文件的內容:
怎樣自定義BuildConfig字段
在我們的build.gradle里面加入如下代碼:
buildTypes { release { // 不顯示Log, 在java代碼中的調用方式為:BuildConfig.LOG_DEBUG buildConfigField "boolean", "LEO_DEBUG", "false" minifyEnabled true zipAlignEnabled true shrinkResources true proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' signingConfig signingConfigs.release } debug { // 顯示Log buildConfigField "boolean", "LEO_DEBUG", "true" versionNameSuffix "-debug" minifyEnabled false zipAlignEnabled false shrinkResources false signingConfig signingConfigs.debug } }
語法為:
buildConfigField "boolean", "LEO_DEBUG", "true"
上述語法就定義了一個boolean類型的LEO_DEBUG字段,值為true,之后我們就可以在程序中使用BuildConfig.LEO_DEBUG字段來判斷我們所處的api環境。例如:
文章列表
全站熱搜