MegaMind
MegaMind

Reputation: 336

Route audio via speaker when headphone plugged it

How we can route audio output via speaker even when the headset is plugged in?

My code:

    if(audioManager.isWiredHeadsetOn())
    {
        audioManager.setWiredHeadsetOn(false);
        audioManager.setSpeakerphoneOn(true); 
        audioManager.setRouting(AudioManager.MODE_NORMAL, AudioManager.ROUTE_SPEAKER, AudioManager.ROUTE_ALL);  
        audioManager.setMode(AudioManager.MODE_NORMAL); 

    }

Am I missing something here?

Upvotes: 6

Views: 4975

Answers (3)

Amoi
Amoi

Reputation: 21

maybe you need to audioManager.setMode(AudioManager.MODE_IN_CALL) or MODE_IN_COMMUNICATION;

Upvotes: 1

Rab Ross
Rab Ross

Reputation: 2096

The method AudioManager.setRouting() is depreciated.

From the Javadoc:

Do not set audio routing directly, use setSpeakerphoneOn(), setBluetoothScoOn() methods instead.

Upvotes: 1

Sebastian Roth
Sebastian Roth

Reputation: 11537

Did you try adding <uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" /> to your AndroidManifest.xml ?

http://developer.android.com/reference/android/Manifest.permission.html#MODIFY_AUDIO_SETTINGS

Upvotes: 3

Related Questions