When using Vivox on Android with Bluetooth devices, the AudioManager must be updated as shown in the following code snippet for audio capture to occur. If the AudioManager is not updated, audio is rendered through the Bluetooth device but no audio is captured, and it appears as if the local user is muted.
Note: To prevent the Vivox SDK from unexpectedly changing AudioManager settings, the Vivox Core, Unity, and Unreal packages do not automatically perform this update.
// The following code does not assume the code is running in
// the application context class.
AudioManager audioManager = (AudioManager)getApplicationContext().getSystemService(Context.AUDIO_SERVICE);
audioManager.setMode(AudioManager.MODE_IN_COMMUNICATION);
audioManager.setBluetoothScoOn(true);
audioManager.startBluetoothSco();
For more information, see the Android Developer documentation on AudioManager.