我有一些硬件可以在蓝牙连接时向手机发送 AVRCP 播放命令。我看到的是在调试器中一遍又一遍地发送垃圾邮件的 MEDIA_BUTTON 操作意图。这导致一些应用程序出现问题,但主要是 Pandora。Pandora 会不断地反复播放/暂停。这几乎就像 AVRCP 命令被发送到手机,它生成一个 MEDIA_BUTTON 广播,不断地被发送出去。
我设置了一个广播接收器来捕捉它并尝试确定发生了什么。以下是垃圾邮件:
01-17 12:20:04.324: 错误/NPT:(1558): Intent { act=android.intent.action.MEDIA_BUTTON (有附加功能) } 01-17 12:20:04.324: 错误/NPT:(1558): KeyEvent{action=0 code=85 repeat=0 meta=0 scancode=200 mFlags=8}
这是蓝牙播放/暂停媒体键。这是应该的,因为 AVRCP 命令会触发它,但正如我所说,就像操作系统一直在发送垃圾邮件一样。
我曾尝试使用该abortBroadcast()
方法来阻止它,但没有效果。我猜广播是无序的,不能明确停止?
我已经通过调试我的固件代码验证了这不是硬件向 AVRCP 命令发送垃圾邮件。如果我拔下硬件,垃圾邮件行为也会继续。
我正在使用 2.2。
谢谢。