Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/229.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 设备音量控制按钮不';t使用音频属性设置耳朵扬声器音量使用情况\u语音\u通信_Android_Audio_Exoplayer - Fatal编程技术网

Android 设备音量控制按钮不';t使用音频属性设置耳朵扬声器音量使用情况\u语音\u通信

Android 设备音量控制按钮不';t使用音频属性设置耳朵扬声器音量使用情况\u语音\u通信,android,audio,exoplayer,Android,Audio,Exoplayer,播放音频文件时,我将声音从外部扬声器切换到内部扬声器(耳式扬声器)。音频通过SimpleXoPlayer播放。切换通过用法\u语音\u通信属性进行声音开始通过听筒播放,但此声音的音量不受系统音量按钮的控制,系统中媒体的音量会发生变化。 我尝试将setContentType设置为CONTENT\u TYPE\u SPEECH,问题仍然存在 问题在谷歌Pixel XL(安卓10)和1+7t(安卓10)上再次出现。 但是在三星Galaxy S9(安卓10)上,没有重复 什么是正确的切换方式,以使正确扬

播放音频文件时,我将声音从外部扬声器切换到内部扬声器(耳式扬声器)。音频通过SimpleXoPlayer播放。切换通过用法\u语音\u通信属性进行声音开始通过听筒播放,但此声音的音量不受系统音量按钮的控制,系统中媒体的音量会发生变化。

我尝试将setContentType设置为CONTENT\u TYPE\u SPEECH,问题仍然存在

问题在谷歌Pixel XL(安卓10)和1+7t(安卓10)上再次出现。 但是在三星Galaxy S9(安卓10)上,没有重复

什么是正确的切换方式,以使正确扬声器的音量发生变化?

以下是我的属性:

private fun setupAttributesWithExternalSpeaker() {
    val audioAttributes = AudioAttributes.Builder()
            .setContentType(C.CONTENT_TYPE_MUSIC)
            .setUsage(C.USAGE_MEDIA)
            .build()

    simpleExoPlayer.setAudioAttributes(audioAttributes, true)
}

private fun setupAttributesWithInternalSpeaker() {
    val audioAttributes = AudioAttributes.Builder()
            .setContentType(C.CONTENT_TYPE_MUSIC)
            .setUsage(C.USAGE_VOICE_COMMUNICATION)
            .build()

    simpleExoPlayer.setAudioAttributes(audioAttributes, false)
}

使用AudioManager.setMode怎么样

AudioManager am = (AudioManager) getSystemService(Context.AUDIO_SERVICE);
am.setMode(AudioManager.MODE_IN_COMMUNICATION);

这对我有用!谢谢