首页 > 开发环境中使用Log在上线时没有被清楚会出现什么后果

开发环境中使用Log在上线时没有被清楚会出现什么后果

如题,线下开发的时候打了一大堆Log,到了线上的话除了这些Log会打印出来,还有什么后果么?对应用的性能有什么影响?


log不影响性能,如果你担心log暴露(非有心为之)敏感信息,可以打包时配置屏蔽log输出就行。两种常用方案
1、统一包装自己的log工具类,使用sdk自带的BuildConfig类做判断是否应该输出log

if(BuildConfig.DEBUG){
    Log.d("your tag", "your info");
}

这样,在非debug模式(一般即发行版本)上就能屏蔽log,前提是要输出log的地方要严格统一使用你包装的log类;
2、log输出使用的都是android Log类而非System.out,可以在build.gradle中配置屏蔽log参数

buildTypes {
    debug {
        // debug configuration
        buildConfigField "boolean", "LOG_DEBUG", "true"
    }

    release {
        buildConfigField "boolean", "LOG_DEBUG", "false"
    }
}

一般清空日志是肯定需要的,最好是自己写一个进行管理,设置debug模式,测试就打印,正式发布就不打印这种。至于后果,因为是通过正式签名发布的了,所以不能被单独调试,但可以在整个手机日志里进行捕捉出来,如果有敏感信息会被人发现。至于性能,日志所占用性能有限,总体来说不会影响应用使用的效率。


如果不是别有用心的 android程序员,就没啥影响。。
就算别有用心,也没啥吧。。除非 你log打的太太太 那个,

【热门文章】
【热门文章】