我已经尝试了几天通过SmartBand Talk(SWR30)发送Google文本到语音音频。我在AndroidManifest.xml
上拥有正确的权限PERMISSION_CONTROL_EXTENSION, BLUETOOTH_ADMIN, 蓝牙, 许可权, BROADCAST_STICKY
我正在使用此代码获取AudioManager:
mAudioManager = (AudioManager) context
.getSystemService(Context.AUDIO_SERVICE);
使用AudioManager通过SmartBand Talk发言:
mAudioManager.setSpeakerphoneOn(false);
mAudioManager.startBluetoothSco();
mAudioManager.setMode(AudioManager.MODE_IN_CALL);
mAudioManager.setBluetoothScoOn(true);
speakMethod();
此解决方案适用于某些设备,这意味着我可以通过SmartBand Talk真正听到消息。但对于其他一些设备(如三星Galaxy S5 4.4.2,LG Nexus 5 Lollipop和索尼Z3 4.4.4),这个解决方案不起作用,因为很少有音频通过SmartBand Talk,几乎95%的时间都在电话,而不是配对的蓝牙设备。
我想知道设备扩展是否能够正常使用此方案,音频将被发送到蓝牙设备,并正确配对手机。
我想知道是否有可能有稳定的东西,可以在每部手机上工作,或者是否有可能。
答案 0 :(得分:1)
该代码段看起来几乎是正确的。但它包含一些不必要的电话。
虽然在一些智能手机的大多数消息来源中建议使用setSpeakerphoneOn(false)。我发现在Z3上没有必要。
您可以查看下面的链接文章。它显示了如何在支持HFP的设备上使用Audio。它是为SmartEyeglass编写的。但它应该在SmartBand Talk上运行相同。
https://developer.sony.com/develop/wearables/smarteyeglass-sdk/guides/use-bluetooth-for-audio-io/