From 8968a9a2e316abac13f0252b38bc7249c81828e2 Mon Sep 17 00:00:00 2001 From: fdp <1286779656@qq.com> Date: Thu, 11 Sep 2025 12:54:24 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E8=8D=A3=E8=80=80=E6=8C=89?= =?UTF-8?q?=E4=BD=8F=E8=AF=B4=E8=AF=9D=E5=A3=B0=E9=9F=B3=E5=A4=96=E6=94=BE?= =?UTF-8?q?=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../azure_speech/tools/SimpleAudioReceiver.kt | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/local_plugins/azure_speech/android/src/main/kotlin/com/yunqiinnovation/azure_speech/tools/SimpleAudioReceiver.kt b/local_plugins/azure_speech/android/src/main/kotlin/com/yunqiinnovation/azure_speech/tools/SimpleAudioReceiver.kt index a7e202690..5dddebd68 100644 --- a/local_plugins/azure_speech/android/src/main/kotlin/com/yunqiinnovation/azure_speech/tools/SimpleAudioReceiver.kt +++ b/local_plugins/azure_speech/android/src/main/kotlin/com/yunqiinnovation/azure_speech/tools/SimpleAudioReceiver.kt @@ -237,8 +237,21 @@ fun startAudioRecord(audioSourceType: AudioSourceType, callback: AudioDataCallba // 设置通话模式 - 这是关键! audioManager?.mode = AudioManager.MODE_IN_COMMUNICATION - // 启用扬声器(如果需要外放) - audioManager?.isSpeakerphoneOn = true + // 检查是否有蓝牙音频设备连接 + val isBluetoothConnected = audioManager?.isBluetoothA2dpOn == true + + // 只有在没有蓝牙设备连接时才启用扬声器 + if (!isBluetoothConnected) { + audioManager?.isSpeakerphoneOn = true + + Log.d("AudioMode", "未检测到蓝牙设备,启用扬声器") + } else { + audioManager?.isSpeakerphoneOn = false + // 启用蓝牙SCO连接 + audioManager?.isBluetoothScoOn = true + audioManager?.startBluetoothSco() + Log.d("AudioMode", "检测到蓝牙设备,使用蓝牙音频") + } // 请求音频焦点 if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.O) {