ADB查看Audio Log

本文介绍了如何通过ADB在Mac上安装并调试Android设备,特别是如何查看Audio Log和AudioFlinger Log。开启开发者模式和USB调试后,利用ADB命令可以获取音频焦点堆栈、Event Log、音频流详情、响铃模式以及PlayBack监听等相关信息。
摘要由CSDN通过智能技术生成

ADB安装

Mac可以使用brew cask install android-platform-tools命令来安装ADB,但是Homebrew也有一些坑,需要自己查一查资料解决一下。

安装完成后可以使用adb version命令查看一下是否安装成功。

adb version
Android Debug Bridge version 1.0.41
Version 30.0.0-6374843
Installed as /usr/local/bin/adb

adb version

调试设备

安卓手机在版本号上连续点击7次,就能开启开发者模式,在里面可以开启USB调试权限。把安卓手机用数据线连接到电脑后,就可以进行ADB调试。

使用adb devices命令,可以查看连接的设备。

adb devices 
List of devices attached
FWP0218516001368	device

adb devices

查看Audio Log

使用adb shell dumpsys audio命令,可以查看一些音频焦点的信息和音频事件的log。
audio log

①:音频焦点堆栈的情况

  • 当前音频焦点堆栈的情况
  • 哪些应用申请了音频焦点
  • 申请焦点的具体信息
mFocusStack:

  source:android.os.BinderProxy@86c5f39 -- pack: com.android.mediacenter -- client: android.media.AudioManager@bfaae59com.android.mediacenter.localmusic.MediaPlaybackServiceImpl$1@cb18a1e -- gain: GAIN -- flags:  -- loss: LOSS_TRANSIENT -- notified: true -- uid: 10015 -- attr: AudioAttributes: usage=USAGE_MEDIA content=CONTENT_TYPE_MUSIC flags=0x0 tags= bundle=null -- sdk:28
  source:android.os.BinderProxy@1b504b2 -- pack: com.android.deskclock -- client: android.media.AudioManager@46e68dfcom.android.deskclock.timer.TimerService$$Lambda$0@270c92c -- gain: GAIN_TRANSIENT -- flags:  -- loss: none -- notified: true -- uid: 10103 -- attr: AudioAttributes: usage=USAGE_ASSISTANCE_SONIFICATION content=CONTENT_TYPE_SONIFICATION flags=0x0 tags= bundle=null -- sdk:26

No external focus policy

Notify on duck:  true

In ring or call: false

②:音频焦点的Event Log:主要是哪个应用在什么时间申请/丢弃了焦点(可惜这里不能查看到申请焦点返回的结果)


                
在Android开发中,查看录音设备的日志信息可以帮助我们调试和优化音频相关的功能。以下是一些常用的方法: 1. **使用ADB命令查看日志**: 你可以使用ADB(Android Debug Bridge)命令来查看设备上的日志信息。打开终端或命令提示符,输入以下命令: ```sh adb logcat | grep "Audio" ``` 这条命令会过滤出所有包含"Audio"的日志信息。 2. **使用Android Studio的Logcat工具**: Android Studio提供了一个强大的Logcat工具,可以实时查看设备日志。你可以在Android Studio中打开Logcat视图,搜索特定的标签或关键字,例如"AudioManager"或"MediaRecorder"。 3. **查看特定标签的日志**: Android的音频系统使用了一些特定的标签来记录日志信息,例如: - `AudioFlinger`:音频系统的核心服务,负责音频流的处理。 - `AudioPolicyService`:音频策略服务,负责管理音频设备的选择和切换。 - `AudioTrack`和`AudioRecord`:用于音频播放和录制的API。 你可以在Logcat中搜索这些标签来查看相关的日志信息。 4. **使用`logcat`命令过滤特定日志**: 你可以使用`logcat`命令的过滤功能来只查看特定模块的日志。例如: ```sh adb logcat -s AudioManager ``` 这条命令只会显示包含"AudioManager"标签的日志信息。 通过以上方法,你可以方便地查看和分析Android设备上的录音设备日志信息,从而更好地调试和优化你的应用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值