日期:2014-05-20  浏览次数:20779 次

j2me如何实现在线播放WEB上的音乐文件
我想到的是:开两个线程,一个线程实现下载,一个线程实现播放。播放完毕返回后删除已下载的文件!
点播放的时候开启下载线程,然后5秒后开启播放线程,模拟器可以实现播放我tomcat服务器下的音乐文件,即使是我下载的过慢,模拟器也会把音乐播放到结束。可到真机上就不行了,只能播放到5秒钟下的那一段,然后就没声音了!

大家认为该怎么去实现?在此先谢过了!最好给点代码参考一下

------解决方案--------------------
我考虑这样 会不会是延时时间过短 因为真机跟模拟器是不能比的 网络原因等等
我在网上找到段代码 希望对你有帮助
fconn = (fileconnection)connector.open("file:///c:/other/mymusic.mp3");
fconn.create();
outputstream = fconn.openoutputstream();

接下来把从输入流的数据写入到输出流中。

httpconnection conn = (httpconnection)connector.open(url);
inputstream is = conn.openinputstream();

int chunksize = 512;
byte []data = new byte[chunksize];
int length = 0;
do{
length = is.read(data, 0, chunksize);
if(length != -1){
outputstream.write(data, 0, length);
}

}while(length != -1);
当下载的缓冲区就绪之后,我们就可以播放文件了。

final string file = "file:///c:/other/mymusic.mp3";

player = manager.createplayer(file);
player.addplayerlistener(this);
player.realize();
player.setmediatime(starttime);


记得记录媒体时间,当我们重新播放音乐的时候用得着。