首页 文章

在android中连接蓝牙耳机后,如何在内置麦克风和耳机麦克风之间切换音频输入?

提问于
浏览
0

我正在使用语音识别应用程序 . 蓝牙耳机成功连接到我的Android设备后,我想在内置麦克风和耳机麦克风之间自由切换音频输入,怎么做?

1 回答

  • 0

    您可以使用以下代码切换蓝牙耳机麦克风 .

    AudioManager audiomanager= (AudioManager)mContext.getSystemService(Context
                .AUDIO_SERVICE);
    IntentFilter intentFilter = new IntentFilter(AudioManager.ACTION_SCO_AUDIO_STATE_UPDATED);
        mContext.registerReceiver(mBluetoothScoReceiver, intentFilter);
    audiomanager.startBluetoothSco();
    

    并听取广播接收器 .

    private BroadcastReceiver mBluetoothScoReceiver = new BroadcastReceiver() {
        @Override
        public void onReceive(Context context, Intent intent) {
            int state = intent.getIntExtra(AudioManager.EXTRA_SCO_AUDIO_STATE, -1);
    
            if (state == AudioManager.SCO_AUDIO_STATE_CONNECTED) {
                // Start recording audio
                log("audio connected");
                startRecording();
            } else if(state == AudioManager.SCO_AUDIO_STATE_DISCONNECTED){
                log("audio disconnected");
            }
        }
    };
    

    并且要切换(断开蓝牙耳机麦克风),您可以使用此代码 .

    mAudioManager.stopBluetoothSco();
    

相关问题