logcat 查看当前应用日志
logcat 查看当前应用日志
目标 & 背景
平时有很多场景需要查看安卓的真机日志,但是要过滤当前应用的日志,终归需要获取当前包名,由于我司游戏比较多,再加上各自有各自的渠道,包名也没有规律可循,每次都要查对应的包名很烦
再加上安卓系统不一样,有些手机可以直接看,有些又不能
本篇文章主要内容会把这个功能封装成 shell 的一个指令
获取当前的包名
通过 dumpsys 就可以获取到当前应用的具体内容
adb shell dumpsys window | grep mCurrentFocus
此时会获得如下结果
mCurrentFocus=Window{8e0a37a u0 com.xxx.xxx/com.xxx.xxxActivity}
我们只需要第一个 / 前的 com.xxx.xxx 内容,因此直接 cut 即可
adb shell dumpsys window | grep mCurrentFocus | cut -d " " -f 5 | cut -d "/" -f 1
通过包名获取 pid
填入包名
adb shell pidof -s com.xxx.xxx
输出日志
填入 pid
adb logcat -v color --pid=xxx
封装
我使用的环境为 Mac 的 zsh,因此最后将这些内容写进 .zshrc 文件中
alias curapkname='adb shell dumpsys window | grep mCurrentFocus | cut -d " " -f 5 | cut -d "/" -f 1'
logcur()
{
bundle=`curapkname`
pid=`adb shell pidof -s $bundle`
adb logcat -v color --pid=$pid
}
最后插上手机,在命令行中输入 logcur 即可查看当前应用的日志了
- 感谢你赐予我前进的力量
赞赏者名单
因为你们的支持让我意识到写文章的价值🙏
本作品采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 进行许可。
评论
匿名评论
隐私政策
你无需删除空行,直接评论以获取最佳展示效果