如何用Codename One捆绑声音?

时间:2016-10-13 19:41:04

标签: audio codenameone

我想在我的Codename One应用程序中包含声音,例如单击按钮,过渡等效果。我不想从URL下载它们,因为它们非常小,我希望它们即使在设备是没有连接到互联网。看起来我不能在主题中包含源文件。我该怎么办?

1 个答案:

答案 0 :(得分:2)

将声音文件放在项目文件夹中的“src”文件夹中,并按如下所示进行引用:

private Media MEDIA = null;
public void playAudio(String fileName) {
    try {
        if (MEDIA == null) {
            final InputStream is = Display.getInstance().getResourceAsStream(getClass(), "/" + fileName);
            MEDIA = MediaManager.createMedia(is, "audio/mp3", new Runnable() {
                @Override
                public void run() {
                    MEDIA = null;
                }
            });
        }
        if (MEDIA != null && MEDIA.isPlaying() == false) {
            MEDIA.setVolume(100);
            MEDIA.play();
        }
    } catch (IOException ioe) {
    }
}

...

playAudio("my_sound.mp3");