Chinaunix首页 | 论坛 | 博客
  • 博客访问: 196664
  • 博文数量: 123
  • 博客积分: 1260
  • 博客等级: 中尉
  • 技术积分: 890
  • 用 户 组: 普通用户
  • 注册时间: 2011-05-06 07:35
文章分类

全部博文(123)

文章存档

2019年(1)

2018年(1)

2017年(7)

2016年(2)

2015年(15)

2014年(14)

2013年(25)

2012年(27)

2011年(31)

我的朋友

分类: Android平台

2013-08-28 13:41:22

Android本地应用程序的调试信息一般通过LOGI、LOGD、LOGE等android logger提供的函数进行程序的debug,但是有时候某些本地应用使用的是printf等c库里的函数进行数据输出,如果这些程序是由init进程执行,那么使用printf等函数的输出内容无法显示在终端上(android在init中做了手脚),甚至某些进程可能会遇到段错误等意外退出的情况,这种情况常见于最初porting android源码时。

 

如何解决上面提到的问题呢?Android提供了一个小工具,叫做logwrapper,用来处理上面提到的情况,使用方法就是将可执行文件的路径作为logwrapper的参数,比如你可以在init.rc中这样写:

 service adbd /system/bin/logwrapper /sbin/adbd

     disabled

 

这样adbd中使用printf函数的输出都会从logcat中显示出来。

阅读(2209) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~