Android日志文件保存方案

Android 的日志文件保存方案,蛮适合平时做调试排查用的。如果你写日志还只是用Log.d()随便打几行,那就太初级了。这套方法不仅能把日志写进文件,还能按日期级别分类,保存下来方便后面,适合做稳定性和问题回溯那类需求。

核心是一个自定义的LogManager类,逻辑也不复杂:每次写日志前先判断一下日期,有变就新建文件;写的时候走BufferedWriter,追加模式,性能还不错。文件名用2022-08-01_DEBUG.txt这种格式,清晰好找,顺手还能加个定期清理逻辑,防止空间爆掉。

日志里内容也挺丰富:时间戳、线程名、日志级别都有,后期排查问题会省不少事。如果你还想再高级点,可以加个日志查看页面,甚至把日志通过接口传到服务器上,远程看也行,挺灵活。

哦对了,日志文件存放路径建议用getFilesDir()或者getExternalFilesDir(),这样只有你这个 App 能访问,也安全点。

想看更多思路的话,下面几个相关工具类可以瞅一眼:

如果你平时遇到日志查不到、慢的问题,可以试试这种按日期+级别存本地文件的做法,真挺香的。

rar
MyLog.rar 预估大小:41个文件
folder
MyLog 文件夹
file
.project 841B
folder
bin 文件夹
file
AndroidManifest.xml 1KB
folder
dexedLibs 文件夹
file
android-support-v4-79c680c45f22229255c6c9afc7ae740d.jar 232KB
file
MyLog.apk 275KB
folder
res 文件夹
folder
crunch 文件夹
folder
drawable-hdpi 文件夹
file
ic_launcher.png 6KB
folder
drawable-mdpi 文件夹
file
ic_launcher.png 3KB
folder
drawable-xhdpi 文件夹
file
ic_launcher.png 9KB
folder
drawable-xxhdpi 文件夹
file
ic_launcher.png 17KB
file
resources.ap_ 40KB
folder
classes 文件夹
folder
com 文件夹
folder
example 文件夹
folder
mylog 文件夹
file
R$string.class 469B
file
R$layout.class 400B
file
MainActivity.class 2KB
file
R$dimen.class 458B
file
R$drawable.class 404B
file
MyLog.class 4KB
file
R$menu.class 385B
file
R.class 663B
file
R$style.class 428B
file
BuildConfig.class 343B
file
R$attr.class 337B
file
R$id.class 454B
file
classes.dex 681KB
file
ic_launcher-web.png 50KB
file
AndroidManifest.xml 1KB
file
proguard-project.txt 781B
folder
libs 文件夹
file
android-support-v4.jar 613KB
folder
src 文件夹
folder
com 文件夹
folder
example 文件夹
folder
mylog 文件夹
file
MainActivity.java 958B
file
MyLog.java 4KB
file
project.properties 563B
folder
res 文件夹
folder
values 文件夹
file
styles.xml 697B
file
strings.xml 222B
file
dimens.xml 220B
folder
layout 文件夹
file
activity_main.xml 531B
folder
drawable-ldpi 文件夹
folder
drawable-hdpi 文件夹
file
ic_launcher.png 7KB
folder
drawable-mdpi 文件夹
file
ic_launcher.png 4KB
folder
drawable-xhdpi 文件夹
file
ic_launcher.png 12KB
folder
drawable-xxhdpi 文件夹
file
ic_launcher.png 24KB
folder
menu 文件夹
file
main.xml 367B
file
.classpath 475B
folder
gen 文件夹
folder
com 文件夹
folder
example 文件夹
folder
mylog 文件夹
file
R.java 2KB
file
BuildConfig.java 159B
folder
assets 文件夹
...
rar 文件大小:1.38MB