调用AudioManager后,导致系统播放音乐没有声音的解决办法
到公司不久,接到一个项目,在调试该项目时发现,在运行改项目后,手机会出现播放音乐没有声音的情况出现
多次查找,定位问题代码如下
Uri ringUri = RingtoneManager.getDefaultUri(RingtoneManager.TYPE_RINGTONE);
audioManager = (AudioManager) mContext.getSystemService(Context.AUDIO_SERVICE);
// audioManager.setMode(AudioManager.MODE_RINGTONE);
audioManager.setMode(AudioManager.MODE_RINGTONE);
audioManager.setSpeakerphoneOn(true);
ringtone = RingtoneManager.getRingtone(mContext, ringUri);
ringtone.play();
//震动
vibrator = (Vibrator) mContext.getSystemService(Service.VIBRATOR_SERVICE);
vibrator.vibrate(new long[]{1000, 10, 100, 1000}, 0);
经过自己实验后发现,是前面写代码的人,把系统的模式,设置为了铃声模式,在改模式下,音乐播放是没有声音的
只需要在停止铃声播放后,调用该方法。
audioManager.setSpeakerphoneOn(false);
audioManager.setMode(AudioManager.MODE_NORMAL);
就可以解决问题了

浙公网安备 33010602011771号