相关疑难解决方法(0)

插入耳机时有没有办法强制通过扬声器播放音频?

我试过推荐的

setSpeakerphoneOn(true) 
Run Code Online (Sandbox Code Playgroud)

而且不推荐

AudioSystem.setForceUse(AudioSystem.FOR_MEDIA, AudioSystem.FORCE_SPEAKER);
Run Code Online (Sandbox Code Playgroud)

但都没有奏效.

我试过了

setWiredHeadsetOn(false)
Run Code Online (Sandbox Code Playgroud)

但这也不起作用,并且已被弃用.

有趣的是,

isSpeakerphoneOn()
Run Code Online (Sandbox Code Playgroud)

报告也是如此

isWiredHeadsetOn()
Run Code Online (Sandbox Code Playgroud)

此外,还设置了以下权限

<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
Run Code Online (Sandbox Code Playgroud)

android

26
推荐指数
1
解决办法
3万
查看次数

Android:强制音频路由

我想在Android应用中更改声音设备输出.我想在耳机插入时使用手机的扬声器.

我试过使用AudioManager类中的setSpeakerphoneOn audioManager.setSpeakerphoneOn(true);,audioManager.setMode(AudioManager.MODE_IN_CALL);但我不想设置MODE_IN_CALL!我想留在MODE_NORMAL.

我搜索了AudioSystem类,我找到了一个应用程序"SoundAbout",它就是这样做的.您可以选择扬声器作为媒体音频,模式保持在NORMAL状态.

所以我尝试setDeviceConnectionState在AudioSystem中将DEVICE_OUT_WIRED_HEADPHONE设置为0,但它不起作用.当我检查DEVICE_OUT_WIRED_HEADPHONE的状态时,它总是设置为1(AVAILABLE),我无法通过扬声器播放声音.

如何在不进入MODE_IN_CALL的情况下将DEVICE_OUT_WIRED_HEADPHONE设置为0或通过扬声器播放声音?

谢谢,抱歉我的英文不好!

android speaker android-audiomanager output

2
推荐指数
1
解决办法
5652
查看次数

标签 统计

android ×2

android-audiomanager ×1

output ×1

speaker ×1