首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >均衡器并不总是被支持,即使当api >= 9?

均衡器并不总是被支持,即使当api >= 9?
EN

Stack Overflow用户
提问于 2012-05-10 22:27:40
回答 1查看 2.9K关注 0票数 13

在启用均衡器功能之前,我检查api级别以确保它等于或大于9。从我从用户那里得到的报告中,似乎还是抛出了一些异常:

eq = new Equalizer(0, mp.getAudioSessionId())可以引发的代码:

代码语言:javascript
复制
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()可以引发的代码:

代码语言:javascript
复制
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)

我不知道是否有解决方案,如果没有,我可以捕获这些异常并禁用均衡器,但我需要知道到底是什么导致了这一点,这样我就可以通知我的用户,而不会让他们感到沮丧。

谢谢你的帮助

EN

回答 1

Stack Overflow用户

发布于 2012-06-05 01:23:12

我也遇到了同样的问题,这是因为我在使用完均衡器时没有调用release()。显然,如果已经存在太多的AudioEffect,本地库将不允许实例化新的are。

票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10536170

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档