Android Studio --> Gradle Build设置自动
ps:http://www.cnblogs.com/kangyi/p/4448398.html
应用场景
通常情况下我们的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模式下该文件的内容
/*
* Automatically generated file. DO NOT MODIFY
*/
package com.leo.kang.cetfour; public final class BuildConfig {
public static final boolean DEBUG = false;
public static final String APPLICATION_ID = "com.leo.demo";
public static final String BUILD_TYPE = "release";
public static final String FLAVOR = "baidu";
public static final int VERSION_CODE = 47;
public static final String VERSION_NAME = "3.6.1";
public static final boolean LEO_LOG = false;
}
怎样自定义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环境。例如:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); CommonUtils.getVersionName(this); initViews(); if(BuildConfig.LEO_DEBUG) {
Log.i("leo", "MainActivity.onCreate()");
}
}
Android Studio --> Gradle Build设置自动的更多相关文章
- 解决Android Studio Gradle Build Running慢的问题
Android Studio方便好用,但是Android Studio Gradle Build Running很慢 解决方法: C:\Users\你的用户名\.gradle 目录下新建一个文件名为 ...
- 解决Android Studio Gradle Build特别慢的问题
解决Android Studio Gradle Build 特别慢的问题 C:\Users\你的用户名\.gradle目录下新建一个文件名为gradle.properties的文件.内容为:org.g ...
- Gradle build设置自动log开关
应用场景 通常情况下我们的apps发布后也就是release模式下log是不显示的,debug模式下是显示log的,但是在特殊情况下我们测试release包的时候需要log的时候,就无法使用Build ...
- Android Studio Gradle Build Running 特别慢的问题探讨
本文的本本win7 64bit 6G android studio2.1 在运行程序的时候Gradle Build Running 特别慢,一个helloworld都快2min了 1.开启gradle ...
- Android Studio Gradle build 报错:Received status code 400 from server: Bad Request
错误提示如下 Could not GET 'https://dl.google.com/dl/android/maven2/com/android/tools/build/gradle/3.1.2/ ...
- android studio Gradle Build速度加快方法
设置离线编译就可以解决这个问题了.如下图所示:
- Android Studio Gradle Build Running 加速
加速效果
- Android studio gradle配置完整版(转)
Android studio gradle配置完整版https://my.oschina.net/u/1471093/blog/539075 Android studio 自定义打包apk名 - pe ...
- Android studio 的初始设置
[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...
随机推荐
- node连接数据库(express+mysql)
操作是在ubuntu系统的下环境,简单记录一下过程. 首先用apt-get安装数据库,键入命令 sudo apt-get install mysql-server , 一路回车,然后在一个界面设置一下 ...
- CMDB概述(一)
浅谈ITIL TIL即IT基础架构库(Information Technology Infrastructure Library, ITIL,信息技术基础架构库)由英国政府部门CCTA(Central ...
- MySQL指定使用某个索引查询语句
查询语句查询emp_no,所以先查询emp_no的索引使用primary select emp_no,salary from salaries use index(s_f_t) where emp_n ...
- 谁说运维用ELK没用?我就说很有用,只是你之前不会用【转】
1.安装JDK 1)登陆ORACLE官网 (http://www.oracle.com/technetwork/java/javase/downloads/index-jsp-138363.html ...
- Mac OS X 编译android内核 error: elf.h: No such file or directory 的解决方法
1. 从网上下个elf.h放到scripts/mod/文件夹(http://www.rockbox.org/tracker/9006?getfile=16683) 2. 修改两个文件mk_elfcon ...
- oracle命令生成AWR报告
--命令生成AWR报告oracle@linux:~> sqlplus / as sysdba SQL*Plus: Release 11.1.0.7.0 - Production on Fri A ...
- 使用extjs做的一个简单grid
<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding= ...
- 简单优化:Zipalign
Android SDK中包含一个“zipalign”的工具,它能够对打包的应用程序进行优化.在你的应用程序上运行zipalign,使得在运行时Android与应用程序间的交互更加有效率.因此,这种方式 ...
- CentOS6.9下安装MariaDB10.2.11
yum groupinstall -y "Development Tools" yum install -y cmake openssl-devel zlib-devel yum ...
- MySql学习笔记——存储函数
在学习完存储过程后,今天主要回顾一下mysql中的存储函数的知识. 函数与存储过程的区别 首先,存储函数也是过程式对象之一,与存储过程相似.它们都是由SQL和过程式语句组成的代码片断,并且可以从应用程 ...