我有一个应用程序,当在电话上使用时,它会显示一个免持话筒切换按钮。切换开关可在电话的耳机和免持话筒之间切换音频路由。然而,当应用程序在平板电脑(或任何没有耳机的设备)上运行时,我想取消切换,因为所有的音频都是通过免提电话发送的。
理想情况下,我希望使用某种isEarpiecePresent()
调用,或者可能检查某个配置对象上的标志来查找此信息,但我在应用程序接口中找不到任何此类信息。
我试图通过调用AudioManager.setSpeakerphoneOn(false)
,然后检查AudioManager.isSpeakerphoneOn()
来解决这个问题,希望它仍然返回true,然后我可以关闭它。即使音频仍通过扬声器传输,系统仍返回false
。
我目前正在考虑检查电话功能,尽管这并不完全适合。还有其他想法吗?
https://stackoverflow.com/questions/6943068
复制相似问题