Focus on background Music when in a call

Posted by Developer on Stack Overflow See other posts from Stack Overflow or by Developer
Published on 2013-07-03T16:08:54Z Indexed on 2013/07/03 17:05 UTC
Read the original article Hit count: 344

I am developing an app. I need to play the music when i am in a call. But i am facing with the problem that whenever i try to play the music in a call it is not that much loud as it is when there is no call. Is there any way to control the background music when in a call. My music volume becomes softer when i am in a call but it becomes louder as soon as i end the call.

final AudioManager mAudioManager = (AudioManager) ctx
                    .getSystemService(AUDIO_SERVICE);
            final int originalVolume = mAudioManager
                    .getStreamVolume(AudioManager.STREAM_MUSIC);
            mAudioManager
                    .setStreamVolume(
                            AudioManager.STREAM_MUSIC,
                            mAudioManager
                                    .getStreamMaxVolume(AudioManager.STREAM_MUSIC),
                            0);
            mp = new MediaPlayer();


            mp.setAudioStreamType(AudioManager.STREAM_MUSIC);

            mAudioManager.setMode(AudioManager.MODE_NORMAL);

            Class audioSystemClass = Class
                    .forName("android.media.AudioSystem");
            Method setForceUse = audioSystemClass.getMethod(
                    "setForceUse", int.class, int.class);
            // First 1 == FOR_MEDIA, second 1 == FORCE_SPEAKER. To go
            // back to the default
            // behavior, use FORCE_NONE (0).
            setForceUse.invoke(null, 1, 1);

this is my code.

© Stack Overflow or respective owner

Related posts about android

Related posts about call