加载MP3文件时,诺基亚5610出现“Out of Memory”错误

时间:2009-11-02 13:27:37

标签: exception java-me nokia

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

问题是:

  • 在尝试在我的手机中播放mp3文件时(诺基亚5610d),它正在制作“Out of memory”错误。
  • 在尝试播放Wav文件时,它给出了“声音不被允许”的例外情况。

我的代码几行就在这里。

播放Wav文件的代码

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

player.realize(); player.start();

播放MP3文件的代码

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

player.realize(); player.start();

请告诉我代码中的问题。

4 个答案:

答案 0 :(得分:1)

你可能想尝试“audio / wav”而不是“audio / x-wav”。

我还建议使用FileConnection URL(例如Manager.createPlayer("file://localhost/E:/MyFolder/Child.mp3");),因为它通常比使用Series40手机上的InputStream创建的玩家更好。

答案 1 :(得分:0)

如果您在player.prefetch();之前致电player.start();,会有什么不同吗?我以前见过的所有例子都是这样做的。

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

答案 2 :(得分:0)

据我所知,你的代码是正确的。

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

答案 3 :(得分:0)

诺基亚40系列最准确的来源,通过直接从SD mp3文件和其他此类文件启动来发送异常(Out of Memory错误)以允许手机:

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) {}
}