Android中使用log4j
16lz
2021-12-04
在android中,实现输出log内容到sd卡中的文件里面,做法是:
1.导入者两个jar包
2.测试代码
import de.mindpipe.android.logging.log4j.LogConfigurator;import java.io.File;import android.os.Environment;import org.apache.log4j.Level;import org.apache.log4j.Logger; public class BaseActivity extends Activity { private Logger gLogger; public void configLog() { final LogConfigurator logConfigurator = new LogConfigurator(); logConfigurator.setFileName(Environment.getExternalStorageDirectory() + File.separator + "crifanli_log4j.log"); // Set the root log level logConfigurator.setRootLevel(Level.DEBUG); // Set log level of a specific logger logConfigurator.setLevel("org.apache", Level.ERROR); logConfigurator.configure(); //gLogger = Logger.getLogger(this.getClass()); gLogger = Logger.getLogger("CrifanLiLog4jTest"); } @Override protected void onCreate(Bundle savedInstanceState) { configLog(); gLogger.debug("test android log to file in sd card using log4j"); }
在AndroidManifest.xml中,增加如下设置:
否则会报 Caused by: java.io.FileNotFoundException: /storage/sdcard0/crifanli_log4j.log: open failed: EACCES (Permission denied)错误
最后即可实现
(1)可以在/mnt/sdcard中生成对应的crifanli_log4j.log文件
(2)log输出的内容中,是DEBUG,且对应的是自己的字符串标识符CrifanLiLog4jTest
jar包下载地址http://down.51cto.com/data/2155282
更多相关文章
- Android官方ORM数据库Room技术解决方案简介(一)
- NDK版本与Android固件要求对应表
- Android(安卓)API版本对应Android系统版本及内核版本和代号
- Could not find com.android.tools.build:aapt2:3.3.1-5013011.
- 默认不弹出输入面板
- Android中Intent对应的category列表大全 .
- 在Eclipse中导入android sdk源码
- 如何解析 android 中的 XML?
- android 绿色开发环境