使均衡器功能之前,我检查API级别,以确保它是等于或大于9,从我从我的用户获得更大的报告,似乎有些异常被抛出无论如何:
代码eq = new Equalizer(0, mp.getAudioSessionId())
可以提高:
Caused by: java.lang.UnsupportedOperationException: Effect library not loaded
at android.media.audiofx.AudioEffect.<init>(AudioEffect.java:355)
at android.media.audiofx.Equalizer.<init>(Equalizer.java:149)
和代码eq.getBandLevelRange()
可以提高:
Caused by: java.lang.UnsupportedOperationException: AudioEffect: invalid parameter operation
at android.media.audiofx.AudioEffect.checkStatus(AudioEffect.java:1182)
at android.media.audiofx.Equalizer.getBandLevelRange(Equalizer.java:206)
我不知道是否有一个解决方案,如果没有我能正好赶上这些例外并禁用均衡器,但我需要知道什么是究竟造成这一点,所以我可以告诉我的用户不折腾他们。
谢谢你的帮助