adb-TAG调试方法

1 概述
adb工具即Android Debug Bridge(安卓调试桥) tools,在adbd调试过程中我们必须启用跟踪日志才可以生成adb调试过程中的log文件,下面对如何启用adb trace log进行介绍。
2 adb trace log介绍
TRACE_TAG在adb_trace.cpp中作了区分,有以下几种:
在这里插入图片描述
通过定义不同的TRACE_TAG对需要写进日志的打印信息进行分类,如:
在这里插入图片描述
如果启用了trace log,在data/adb下会生成log日志;如果没有启用trace log,就不会生成log。至于如何启用trace log,则是由persist.adb.trace_mask属性决定的(默认为空),在adb_trace.cpp中:
在这里插入图片描述
在这里插入图片描述
如果这个属性为空,那么在data/adb下就不会有trace log日志;如果不为空,则会有log生成,并且log中的打印信息也是由这个属性决定的。比如我们想要查看TRACE_TAG为ADB的log,就直接将这个属性值设置成ADB,即:
setprop persist.adb.trace_mask adb

调试过程中,添加打印的方式是通过“D”来完成:
在这里插入图片描述
3 调试案例
1、 在remount_service.cpp下添加打印信息进行调试:
在这里插入图片描述
将编译好的adb模块烧到设备中,重启设备后:
setprop persist.log.tag v 设置打印优先级(永久保存)
2、查看remount_service的TRACE_TAG为adb:
setprop persist.adb.trace_mask adb 设置persist.adb.trace_mask属性为adb
重启设备
3、这里实现的功能是将以读写方式重新挂载到根目录下的system分区进行umount,重点关注一下调试过程:
首先以读写方式将system分区重新挂载到根目录下:
setprop service.ipc.root 1
setprop service.ipc.remount 1
进入data/adb目录,会发现有不止一个log日志,这是因为执行上面两个指令后相当于重启了adbd daemon服务两次,为了方便于查找我们需要的日志,可以在执行最后一次重启adbd daemon服务前将data/adb下的日志全部删除,进到data/adb目录下执行:
rm *
最后执行umount,这一步也是要重启adbd daemon的,所以在这之前已经将data/adb下的log日志删除干净,执行:
setprop service.ipc.remount 0 实现umount system分区挂载路径功能
然后进到data/adb目录下,就可以看到唯一的一个log日志,cat 查看其内容就会发现我们添加过的打印信息:
在这里插入图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值