Exception &引用;“内存不足”;加载MP3文件时诺基亚5610出错

Exception &引用;“内存不足”;加载MP3文件时诺基亚5610出错,exception,java-me,nokia,Exception,Java Me,Nokia,我正在开发一个j2me应用程序来播放wav和mp3文件 问题是: 尝试在我的手机(诺基亚5610d)中播放mp3文件时,出现“内存不足”错误 当尝试播放Wav文件时,会出现“声音不允许”异常 这里有几行代码 播放Wav文件的代码 InputStream is = getClass().getResourceAsStream("/Child.wav"); player = Manager.createPlayer(is, "audio/x-wav"); player.realize(); p

我正在开发一个j2me应用程序来播放wav和mp3文件

问题是:

  • 尝试在我的手机(诺基亚5610d)中播放mp3文件时,出现“内存不足”错误
  • 当尝试播放Wav文件时,会出现“声音不允许”异常
这里有几行代码

播放Wav文件的代码

InputStream is = getClass().getResourceAsStream("/Child.wav");
player = Manager.createPlayer(is, "audio/x-wav");

player.realize(); player.start();
InputStream is = getClass().getResourceAsStream("/Child.mp3");<br/>
player = Manager.createPlayer(is, "audio/mpeg");

player.realize(); player.start();
播放MP3文件的代码

InputStream is = getClass().getResourceAsStream("/Child.wav");
player = Manager.createPlayer(is, "audio/x-wav");

player.realize(); player.start();
InputStream is = getClass().getResourceAsStream("/Child.mp3");<br/>
player = Manager.createPlayer(is, "audio/mpeg");

player.realize(); player.start();
InputStream is=getClass().getResourceAsStream(“/Child.mp3”)
player=Manager.createPlayer(即“音频/mpeg”); player.realize();player.start();

请让我知道我的代码中有什么问题。

如果调用
player.prefetch()
播放器.start()之前?我之前看到的所有例子都是这样做的

如果
audio/mpeg
不起作用,也可以尝试使用mime类型
audio/mp3

您可能希望尝试使用“audio/wav”而不是“audio/x-wav”


我还建议使用文件连接URL(
Manager.createPlayer(“file://localhost/E:/MyFolder/Child.mp3)因为这通常比在40系列手机上使用InputStream创建的播放器工作得更好。

根据我的说法,您的代码是正确的


我收到“声音不允许”错误,因为手机处于静音模式,我正在尝试播放它。您确定您的手机在运行代码时没有处于静音模式吗?

诺基亚40系列最准确的来源是:直接从SD mp3文件和其他此类文件启动,以允许手机:

import java.io.IOException;
import javax.microedition.media.Manager;
import javax.microedition.media.MediaException;
import javax.microedition.media.Player;
import javax.microedition.midlet.MIDlet;
public class pro extends MIDlet {
     public pro() throws IOException, MediaException {

     Player player = Manager.createPlayer("file:///E:/03.mp3");
     player.realize();
     player.start();

     }
  public void startApp() { }
  public void pauseApp() {}
  public void destroyApp(boolean unconditional) {}
}