Ice Cream Sandwich上的Android Visualizer(音频效果)运行时异常

在随SDK提供的示例AudioFxDemo.java中,我得到了一个

java.lang.RuntimeException: Cannot initialize Visualizer engine, error: -4

在尝试创建android.media.audiofx.Visualizer时

mVisualizer = new Visualizer(mMediaPlayer.getAudioSessionId());

(AudioFxDemo.java:173).

据我所知,错误起源于native code,(第266行).尝试创建android.media.audiofx.Equalizer时也会发生错误:

mEqualizer = new Equalizer(0, mMediaPlayer.getAudioSessionId());

(AudioFxDemo.java:98)

我得到了

java.lang.IllegalArgumentException: Effect type: 0bed4300-ddd6-11db-8f34-0002a5d5c51b not supported.

我已为我的项目声明了以下权限:

<uses-permission android:name="android.permission.RECORD_AUDIO"
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS"/>

有什么想法可能会出错吗?

它似乎是API级别的问题.我对Gingerbread(API Level 10)没有任何问题.我只在虚拟设备上测试过.

解决方法:

这似乎是模拟器的一个问题.我已经在运行Android 4.0.3的实际设备上进行了测试,它运行得很好.

上一篇:学习JAVA第二十六天


下一篇:Android Visualizer实现崩溃