这是问题所在。当我使用下面的代码在我之前的手机上通过蓝牙读取消息时,我的手机正确读取(Galaxy S3)。我已经升级到HTC One(M8),这不再适用于蓝牙。奇怪的是,当我点击谷歌现在按钮时,它将正确地通过蓝牙收听。所以我的问题是,是否有人知道通过蓝牙使用Google即时收听功能的代码。就像我之前说过的,下面的代码已经在大多数设备上工作,所以Kit Kat上有些变化。如果可以,请帮忙。
am = (AudioManager)getSystemService(Context.AUDIO_SERVICE);
am.setMode(AudioManager.MODE_IN_CALL);
am.setBluetoothScoOn(true);
am.startBluetoothSco();
答案 0 :(得分:0)
在Kitkat遇到同样的问题。尝试在Manifest文件中将目标操作系统更改为4.3,然后在Kitkat设备上运行它,它对我有用。
答案 1 :(得分:0)
我遇到了同样的问题。要构建上一个答案,目标操作系统需要为17或更低。特别是JELLY_BEAN_MR1或以下(又名Android 4.2,4.2.2)。 Android APK 18及更高版本由于此问题而无法正常工作。
我认为这与AudioManager.startBluetoothSco的文档中的以下内容有关:
注意:直到并包括API版本JELLY_BEAN_MR1,此方法启动虚拟 语音呼叫蓝牙耳机。 API版本之后JELLY_BEAN_MR2只有原始的SCO音频 建立联系。
流类型必须为STREAM_VOICE_CALL 格式必须是单声道 采样必须是16kHz或8kHz
以下限制适用于输入流: 格式必须是单声道 采样必须是8kHz