Java me 播放多个声音文件的j2me问题

Java me 播放多个声音文件的j2me问题,java-me,audio-player,midp-2.0,Java Me,Audio Player,Midp 2.0,我现在在eclipse的j2me MIDP2中开发的一个游戏中播放2个以上的声音文件有问题。 请告诉我播放多个“wav”声音文件的最佳方式。 我创建了以下方法,该方法在程序启动时调用一次 public void setSound() { System.out.println("Sound on"); try { p1=Manager.createPlayer(is1, "audio/X-wav");

我现在在eclipse的j2me MIDP2中开发的一个游戏中播放2个以上的声音文件有问题。 请告诉我播放多个“wav”声音文件的最佳方式。 我创建了以下方法,该方法在程序启动时调用一次

public void setSound()
        {
            System.out.println("Sound on");
            try {
                p1=Manager.createPlayer(is1, "audio/X-wav");
                p2=Manager.createPlayer(is2, "audio/X-wav");
                p3=Manager.createPlayer(is3, "audio/X-wav");
            } catch (IOException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            } catch (MediaException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
        }

每次我需要播放其中一种声音时,我会停止另外两个播放器(以确保它们中没有一个正在运行
p2.stop();p3.stop();
)并启动第三个(
p1.start();
),每次我停止两个播放器(处于预取状态)第三个未运行,并引发异常。

Java ME规范对此没有具体规定,但在实际设备上,一次只能分配一个播放机,因此仅停止播放机是不够的。另见。我发现,在播放一个新的声音之前,即使是正确地分配一个播放器也是一个挑战,所以我求助于等待一个声音结束,然后再尝试播放一个新的声音

在j2me中只有一个播放器。不支持超过一个播放器。如何一个接一个或任何其他声音执行声音。如果要播放多个声音,请按照下面的编码

public class AudioPlayer implements javax.microedition.media.PlayerListener{

Player player;
int count=0;

public void playMedia(){

try{

player = Manager.createPlayer(getClass().getResourceAsStream(audioFiles[count]),"audio/x-amr");
player.addPlayerListener(this);
player.start();

}
catch (Exception e) {
return ;
}
}


public void playerUpdate(Player p,String event,Object eventData) 
{

        //Playing next audio file after completion of current audio.
}

}

你能显示is1和is3吗?stacktraceAbout stacktrace有一个小问题——调试在我的eclipse上运行得不好,但是getState()返回的状态是300预取的。s40限制可能存在一些问题?无需调试,只需运行应用程序,
e.printStackTrace()并最终捕获常规
异常
。@SIVAKUMAR.J:先生,您的Caps Lock钥匙似乎出现故障。请联系技术人员。