android 有线耳机插拔

31 篇文章 0 订阅

framework 流程

在这里插入图片描述
关键词
/sys/class/switch/h2w
sys/devices/virtual/switch/h2w

log打印

logcat |grep -E “WiredAccessoryManager|AudioPolicy|AudioService”

04-23 11:42:07.280  1557  1557 I SystemServer: StartAudioService                                 //strat   SystemServer
04-23 11:42:07.280  1557  1557 I SystemServiceManager: Starting com.android.server.audio.AudioService$Lifecycle
04-23 11:42:07.309  1557  1557 D SystemServerTiming: StartAudioService took to complete: 28ms
04-23 11:42:07.310  1557  1557 I SystemServer: StartWiredAccessoryManager                        // Start  WiredAccessoryManager
04-23 11:42:07.311  1557  1557 W WiredAccessoryManager: This kernel does not have usb audio support  // 说明不支持 usb
04-23 11:42:07.311  1557  1557 D SystemServerTiming: StartWiredAccessoryManager took to complete: 0ms
04-23 11:42:08.274  1557  1557 V WiredAccessoryManager: init()                 // WiredAccessoryManager  init


04-23 11:43:21.823  1557  1616 V WiredAccessoryManager: Headset UEVENT: {SUBSYSTEM=switch, SEQNUM=2786, ACTION=change, SWITCH_NAME=Headset, DEVPATH=/devices/virtual/switch/h2w, SWITCH_STATE=2}
04-23 11:43:21.823  1557  1616 V WiredAccessoryManager: newName=Headset newState=2 headsetState=2 prev headsetState=0
04-23 11:43:21.825  1557  1616 I WiredAccessoryManager: MSG_NEW_DEVICE_STATE
04-23 11:43:21.825  1557  1557 V WiredAccessoryManager: headsetName:  connected
04-23 11:43:21.825  1557  1557 I AudioService: setWiredDeviceConnectionState(1 nm:  addr:)
04-23 11:43:21.827  1557  1651 I AudioService: onSetWiredDeviceConnectionState(dev:8 state:1 address: deviceName: caller: android);
04-23 11:43:21.827  1557  1651 I AudioService: handleDeviceConnection(true dev:8 address: name:)
04-23 11:43:21.827  1557  1651 I AudioService: deviceKey:0x8:
04-23 11:43:21.827  1557  1651 I AudioService: deviceSpec:null is(already)Connected:false  //连接耳机
04-23 11:43:21.828   393   863 D APM_AudioPolicyManager: setDeviceConnectionStateInt() device: 0x8, state 1, address  name //调用 audiopolicy
04-23 11:43:21.834  1557  1651 I AudioService: sendDeviceConnectionIntent(dev:0x8 state:0x1 address: name:);


04-23 11:43:50.213  1557  1616 V WiredAccessoryManager: Headset UEVENT: {SUBSYSTEM=switch, SEQNUM=2787, ACTION=change, SWITCH_NAME=Headset, DEVPATH=/devices/virtual/switch/h2w, SWITCH_STATE=0}
04-23 11:43:50.213  1557  1616 V WiredAccessoryManager: newName=Headset newState=0 headsetState=0 prev headsetState=2
04-23 11:43:50.214  1557  1616 I WiredAccessoryManager: MSG_NEW_DEVICE_STATE
04-23 11:43:50.214  1557  1557 V WiredAccessoryManager: headsetName:  disconnected
04-23 11:43:50.214  1557  1557 I AudioService: setWiredDeviceConnectionState(0 nm:  add

setDeviceConnectionStateInt

setDeviceConnectionStateInt() device: 0x8, state 1, address name
Android audio不同设备输出不同音频研究(上)
Android audio 输出设备选择过程分析(下)

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值