关于部分手机使用听筒模式播放音频时没有声音的问题

这一个问题其实包含细节很多(涉及硬件和多媒体的细节问题都特别多),我只讲述我所遇见的问题,做一下记录

前提是如果使用扬声器播放声音的时候播放正常,而使用听筒模式下面播放声音却没有声音。这种情况仅有部分手机出现,解决代码如下:

 private void setPlayModle(){
        AudioManager audioManager = (AudioManager) getSystemService(Context.AUDIO_SERVICE);
        if (radioGroup.getCheckedRadioButtonId() == R.id.normal){ //假如选择的id是正常模式,那么使用扬声器播放
            audioManager.setSpeakerphoneOn(true);
            audioManager.setMode(AudioManager.MODE_NORMAL);
        }else{ //否则使用听筒模式播放
            audioManager.setSpeakerphoneOn(false);
            // AudioManager.MODE_IN_COMMUNICATION这个值替换 AudioManager.MODE_IN_CALL 因为 AudioManager.MODE_IN_CALL 在5.0之上会出现问题
            audioManager.setMode(AudioManager.MODE_IN_COMMUNICATION);
            int maxVolume = audioManager.getStreamMaxVolume(AudioManager.STREAM_VOICE_CALL);//获取当前通话最大音量
            audioManager.setStreamVolume(AudioManager.STREAM_VOICE_CALL,maxVolume,0); //设置为0 ,其他值可能会在修改音量大小的时候出现系统音量进度条
        }
}

我对于这个了解也不是很多,如果有好的建议欢迎留言
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值