My requirement is to turn on speakerphone whenever an outgoing call is initiated. I tried the following code, but it is not working. In fact, speakerphone turns on when in t
A similar question was asked and answered here.
I think the answer may be in your project's AndroidManifest.xml. Try adding:
uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS"
to your manifest, which will allow your app to modify the device's audio settings.
You will also need to change your audioManager mode to MODE_IN_CALL:
audioManager.setMode(AudioManager.MODE_IN_CALL)
You can set it through programmatically as below :
AudioManager audioManager = (AudioManager)getApplicationContext().getSystemService(Context.AUDIO_SERVICE);
audioManager.setMode(AudioManager.MODE_IN_CALL);
audioManager.setSpeakerphoneOn(true);
But, keep in mind that don't forgot to set speaker off when stop the call:
audioManager.setSpeakerphoneOn(false);
And, Set permission in manifest:
<uses-permission android:name="android.permission.RECORD_AUDIO" />
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS"/>
This code is working fine for me.hope it will be helpful for you.