Android 保存并导出本地日志

背景:闸机检票项目经常会受到项目上反馈功能异常,排查问题需要提取设备中保存的日志,但是获取闸机设备中保存的日志基本上都是需要人工获取,需要集成部同事或者景区工作人员,非常的不方便,因此在前段时间,研发部内部开始了日志上传功能的开发。

下面直接介绍如何快速给项目中接入日志保存及导出模块功能,以及如何调用相关的方法

demo示意图,文末附源码

 demo中有两个按钮,分别用于实现单日和多日的日志压缩功能

说明:

 //日志保存路径
    public static final String LOG_DIR = "/ExportLogDemo/logs/";
    //日志拷贝路径
    public static final String COPY_DIR = "/ExportLogDemo/copy/";
    //日志压缩路径
    public static final String ZIP_DIR = "/ExportLogDemo/upload/";

代码中定义了三个路径:

日志保存路径:即为app在设备中保存的文件路径,这里存放着app生成的所有的日志文件;

日志拷贝路径:后台接口有起止时间参数,用于获取起止时间内的日志文件,拷贝路径即为从日志保存路径中筛选所有的符合条件的日志文件的集合。即,日志拷贝路径下,存放着本次请求中需要获取的所有日志文件;

日志压缩路径:简而言之,该路径存放着日志拷贝路径的压缩文件夹,也是最终上传的路径;

注:日志保存路径下的文件,如果不人为删除,将会一直保存下去,而后两个路径均会随着每一次的请求而清空,即为处理请求而存在的临时文件,只会为空,或者保存满足上一次请求的文件

实际操作:(当前操作日期为2023年3月31日)

点击”压缩当天日志文件“,流程如下

先清空本地拷贝文件夹和压缩文件夹,并完成日志拷贝,并对拷贝文件夹进行压缩

点击”压缩最近三天日志文件”,流程如下

 压缩多个日志文件,因为未必每一天都有日志输出,所以这里会先循环判断是否文件存在,再对满足日期条件且存在的日志进行拷贝,以及压缩

demo源码

说明:demo已兼容Android13,并且根据设备的存储情况将日志文件保存到sd卡或者app内部路径

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

邵旺运

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值