2012-05-10 7 views
12

, 나는 확실히 그것을 같거나 내 사용자로부터 받고 있어요 보고서에서보다 큰 9. , 몇 가지 예외가 어쨌든 발생하는 것으로 보인다입니다 수 있도록 API 레벨을 확인 :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) 

나도 몰라하고, 그렇지 않은 경우 내가 공동 uld가 이러한 예외를 잡아 내고 이퀄라이저를 사용하지 않도록 설정했는데 정확히 무엇이 원인인지 알 필요가있어서 사용자를 혼란스럽게하지 않고 사용자에게 알릴 수 있습니다. 어떤 도움

+0

API 레벨 25에서 같은 오류가 발생 했습니까? 해결책을 찾았습니까? – AkhilGite

답변

6

에 대한

덕분에 나는이 같은 문제가 있었는데, 그것은 내가 그것을 완료되었을 때 내 이퀄라이저에 릴리스()를 호출하지 않음으로써 발생했다. 분명히 이미 존재하는 네이티브 라이브러리는 새로운 AudioEffect를 인스턴스화 할 수 없습니다.

+0

내 이퀄라이저를 초기화하고있는 동일한 클래스에서 릴리스를 추가했으며 내 응용 프로그램이 api 레벨 25를 제외한 모든 장치에서 정상적으로 작동합니다. java.lang.UnsupportedOperationException 예외가 발생했습니다 : AudioEffect : 잘못된 매개 변수 작업 그래서 요청했습니다. 아래 링크에있는 전화 http://stackoverflow.com/questions/40967977/java-lang-unsupportedoperationexception-audioeffect-invalid-parameter-operatio/40968149?noredirect=1#comment69152090_40968149 – AkhilGite