开发Tips

区分Release 和Debug

为了 log 和 接口环境需要,总是需要区分logs
有两种方式:
首先是 需要上下文的方式:

public static boolean isApkDebugable(Context context) { 
    try { 
        ApplicationInfo e = context.getApplicationInfo(); 
        return (e.flags & ApplicationInfo.FLAG_DEBUGGABLE) != 0; 
    } catch (Exception var2) { 
        return false; 
    } 
} 

另外 则是直接从build的配置项中设置和读取,更加具有普遍性:

   buildTypes { 
        release {
                   minifyEnabled false
//            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 
                    buildConfigField "boolean", "LOG_DEBUG", "true"   
        }  
        debug {           
                   minifyEnabled false
                    buildConfigField "boolean", "LOG_DEBUG", "false"       
        }  
  }

先设置不同build 方式的标志量的值
然后使用如下:

if (BuildConfig.LOG_DEBUG) {  
   Log.d(tag, msg);
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,200评论 19 139
  • 这篇文章实时更新iOS开发过程中小小得Tips,没有高深的算法和程序架构,设计。就是一个备忘录![最近发现倒序比较...
    HenryPeng阅读 581评论 0 0
  • 最近看了一点关于swift的书籍,记录一些知识点。都是我自己的理解,可能会有些不准确的地方,请指出来,一起学习,感...
    Eddiegooo阅读 698评论 1 0
  • 1.NSTimer //暂停if ([timer isValid]) {[timer setFireDate:[N...
    俊月阅读 1,394评论 0 0
  • Spring Boot 参考指南 介绍 转载自:https://www.gitbook.com/book/qbgb...
    毛宇鹏阅读 46,993评论 6 342