首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >XLog debug 开启打印日志,release 关闭打印日志

XLog debug 开启打印日志,release 关闭打印日志

原创
作者头像
lichong951
发布2025-11-28 14:33:47
发布2025-11-28 14:33:47
360
举报

XLog 里实现 debug 开启 / release 关闭 日志,不需要自己写开关,官方已提供 编译期 + 运行时 两级方案,零运行时开销

下面给出 Java & Kotlin 两种写法,直接拷贝即可。


一、build.gradle 里利用 BuildConfig.DEBUG 自动切换

代码语言:java
复制
android {
 ...
  buildTypes {
 debug {
 // debug 版打开 XLog
 buildConfigField "boolean", "LOG_OPEN", "true"
}
  release {
  // release 版彻底关闭(编译期优化)
  buildConfigField "boolean", "LOG_OPEN", "false"
 }
  }
  }undefined  二、Application 里一行代码初始化public class App extends Application {
@Override
public void onCreate() {
super.onCreate();
// 只在 debug 编译时生效,release 版不会打印也不会初始化
if (BuildConfig.LOG_OPEN) {
XLog.init(LogLevel.ALL);// 调试版全开
} else {
XLog.init(LogLevel.NONE);  // 发布版全关(0 开销)
}
}
}

三、Kotlin 更简洁

代码语言:kotlin
复制
class App : Application() {
 override fun onCreate() {
super.onCreate()
  XLog.init(if (BuildConfig.LOG_OPEN) LogLevel.ALL else LogLevel.NONE)
}
}

四、运行时动态关闭(可选)

同一份 APK后台远程关闭日志

代码语言:java
复制
// 远程配置下发 false
if (!RemoteConfig.isLogOpen()) {
 XLog.init(LogLevel.NONE);// 立即停打
 }

五、一行总结

debug / release 双包场景

gradle 里 BuildConfig.LOG_OPEN + XLog.init(LogLevel.ALL/NONE) 即可 编译期彻底关闭 XLogrelease 版 0 性能损耗

单包场景

远程配置 → XLog.init(LogLevel.NONE) 随时关闭。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档