我正在使用JAVA ME 1.4和WTK以及LWUIT,并希望在PhoneME中运行的Java应用程序中发出一声哔哔声。
我在谷歌上发现了几种方法,但它们都没有用。
我的最后一次尝试是使用Display.getInstance().playBuiltinSound(Display.SOUND_TYPE_ERROR)
,但没有成功。
另一个是:AlertType.WARNING.playSound(Display.getDisplay(midlet))
;也没有工作
这一个:Playing Audio with J2ME;没有成功
有人可以帮忙找到一种在JAVA ME上发出哔哔声的通用方法吗?
答案 0 :(得分:0)
如果是我,我会使用Player对象播放AMR文件或MIDI文件。
AMR是JavaME支持最广泛的流式音频格式。您可以使用各种转换器轻松地将WAV文件转换为AMR。
使用Player对象非常简单。这是播放MIDI的示例。首先创建Player对象:
Player myPlayer = Manager.createPlayer(getClass().getResourceAsStream("music.mid"), "audio/midi"); // For AMR use audio/amr
在此之后你可能只需要调用myPlayer.start(),但这里有麻烦:有些设备要求你先调用realize()和prefetch(),而这些确切的调用会搞砸其他设备上的回放。因此,要在大多数可能的设备上进行播放,只需输入一些try / catch块:
try {
myPlayer.realize();
} catch (Exception e) {} // Didn't work? Oh well, never mind.
try {
myPlayer.prefetch();
} catch (Exception e) {} // Again, we don't care if it didn't work.
try {
myPlayer.start();
} catch (Exception e) {}
使用这种方法可以在大多数设备上为您提供有效的声音。
在线查找哔声应该不是问题。