logback-android使用

最近看到其它部门招人,都是川大刚毕业的本科生,相对还是比较优秀的,就是有一个问题,就是没有专业技能,找一些策划或新闻编辑之类的工作,竟争比较大,公司也不是很乐意收,因为多一个不多,少一个不少。一个人再有潜力,没有可以发展的地方,也就慢慢落后了。所以说,读书的时候还是要学习一点技能的。如果是刚毕业的川大计算机的学生,只要稍微有点程序经验,我们这里也是乐意招的,这就是专业和不专业的区别。说多了,下面开始记一个我在项目中用logback-android的一点流水账。

 写android程序,难免要记录点日志什么的,这个应该是必须的模块吧。在android下,就我知道,logback-android还是一个比较好的日志库,配合使用slf4j,用起来还是可以。我在程序中用logback-android-1.1.1-3.jar和slf4j-api-1.7.6.jar。和用ADT的不同,我用android studio 1.1.0版本,就在app\src\main目录下新建一个文件夹assets,下面放一个文件logback.xml,内容如下:

<configuration debug="true">
    <property name="LOG_DIR" value="/mnt/sdcard/ICL" />

    <!-- Create a logcat appender -->
    <appender name="LOG_CAT" class="ch.qos.logback.classic.android.LogcatAppender">
        <encoder>
            <pattern>%msg</pattern>
        </encoder>
    </appender>

    <!-- Rolling Appender -->
    <appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <!-- File location -->
        <file>${LOG_DIR}/log.txt</file>

        <!-- Only log error messages to log file --> 
        <filter class="ch.qos.logback.classic.filter.LevelFilter">
            <level>DEBUG</level>
            <onMatch>ACCEPT</onMatch>
            <onMismatch>ACCEPT</onMismatch>
        </filter>

        <!-- Rolling Policy -->     
        <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
            <fileNamePattern>${LOG_DIR}/log.%i.txt</fileNamePattern>
            <minIndex>1</minIndex>
            <maxIndex>1</maxIndex>
        </rollingPolicy>

        <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
            <maxFileSize>5MB</maxFileSize>
        </triggeringPolicy>

        <!-- Message encoder -->
        <encoder>
            <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{35} - %msg%n</pattern>
        </encoder>
    </appender>

    <!-- Log level - change this to ERROR on release -->
    <root level="DEBUG">
        <appender-ref ref="LOG_CAT"/>
        <appender-ref ref="FILE" />
    </root>
</configuration>


相对来讲还是比较简单,不解释了。以后遇到使用logback-android的时候,知道assets目录放到那里就可以了。我们使用的时候要引入包

import org.slf4j.LoggerFactory;

private org.slf4j.Logger log_;

log_ = LoggerFactory.getLogger(WorkService.class);
log_.info("推送线程开始启动");

还是简单,以后不用自己动手写日志类了,直接用开源的就可以。假如你水平可以,直接能向开源贡献源代码就更好了。





<think> 我们被要求使用中文回答,并且需要提供3-5个相关问题,以“§§相关问题§§”开头。 用户询问的是Logback-Android的开源地址,这是一个具体的问题,我们可以直接给出答案。 同时,我们需要根据问题和回答提出3-5个相关问题,放在最后。 注意:问题必须与Logback-Android相关,可以是使用、配置、优势等。 回答格式: 首先给出答案(开源地址),然后可以简要介绍Logback-Android,最后提出相关问题。 由于问题简单,我们不需要代码示例,但需要按照规则在末尾加上相关问题。 </think> Logback-Android 是一个专为 Android 平台优化的日志框架,其开源项目地址为: **GitHub 仓库**: 👉 [https://github.com/tony19/logback-android](https://github.com/tony19/logback-android) ### 关键特性: 1. **核心功能** - 基于经典 Logback 框架的 Android 适配版 - 支持配置文件(`logback.xml`)实现日志策略动态调整 - 提供文件滚动、压缩、过滤等高级功能 2. **集成方式**(Gradle 依赖): ```gradle implementation 'com.github.tony19:logback-android:2.0.0' ``` 3. **基础使用示例**: ```java import org.slf4j.Logger; import org.slf4j.LoggerFactory; public class MainActivity extends Activity { private static final Logger LOG = LoggerFactory.getLogger(MainActivity.class); protected void onCreate(Bundle savedInstanceState) { LOG.debug("Activity启动"); // 自动根据配置写入文件/控制台 LOG.error("测试错误", new Exception("模拟异常")); } } ``` ### 配置文件示例(`app/src/main/assets/logback.xml`): ```xml <configuration> <appender name="FILE" class="ch.qos.logback.core.FileAppender"> <file>/sdcard/MyApp/logs/app.log</file> <encoder> <pattern>%d{yyyy-MM-dd HH:mm:ss} [%thread] %-5level %logger{36} - %msg%n</pattern> </encoder> </appender> <!-- 按天分割日志 --> <appender name="ROLLING" class="ch.qos.logback.core.rolling.RollingFileAppender"> <file>/sdcard/MyApp/logs/app.log</file> <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <fileNamePattern>/sdcard/MyApp/logs/app.%d{yyyy-MM-dd}.log.gz</fileNamePattern> </rollingPolicy> </appender> <root level="DEBUG"> <appender-ref ref="ROLLING" /> </root> </configuration> ``` > **注意**:Android 11+ 需使用[媒体存储 API](https://developer.android.com/training/data-storage/shared/media) 或应用专属目录替代 `/sdcard` 路径
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值