将音频文件从 Url 下载到存储并在代号一中完成下载后播放
Download Audio File From Url To Storage And Play On Download Complete In Codename One
我正在使用需要下载音频文件 (mp3) 的代号 one 开发应用程序
从远程服务器,然后在下载完成后播放。
我希望它在单击按钮后发生,但到目前为止......我在模拟器中看到的只是无限对话框,没有别的。
我在我的开发电脑上使用 java 7。
以下是相关的代码片段:
ok.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent ae) {
String file=_cat+".mp3";
String path="/"+file;
Util.downloadUrlToStorage("http://abcde.com/images/"+file,path,true);
final InputStream is = Display.getInstance().getResourceAsStream(this.getClass(), path);
try {
Media mm = MediaManager.createMedia(is, "audio/mp3");
mm.play();
}
catch (IOException ex) {
ex.printStackTrace();
}
}
});
我怎样才能下载音频文件并在完成后播放?。
我根据 shai almog 的回答编辑了我的代码,如下所示:
ok.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent ae) {
String file=_cat+".mp3";
Util.downloadUrlToStorage("http://abcde.com/images/"+file,file,true);
try {
is = Storage.getInstance().createInputStream(file);
} catch (IOException ex) {
ex.printStackTrace();
}
try {
Media mm = MediaManager.createMedia(is, "audio/mp3");
mm.play();
}
catch (IOException ex) {
ex.printStackTrace();
}
.....仍然没有下载....我去
.CodenameOneStorage
我电脑上的目录,但那里什么也没有..我想
我错过了一些东西
getResourceAsStream
returns 流到 jar 中,是只读路径。它不是 "file",你不能在那里写。存储是一个简化的文件系统,与它无关。
您可以使用类似的东西:
Util.downloadUrlToStorage("http://abcde.com/images/"+file,file,true);
InputStream is = Storage.getInstance().createInputStream(file);
我正在使用需要下载音频文件 (mp3) 的代号 one 开发应用程序 从远程服务器,然后在下载完成后播放。
我希望它在单击按钮后发生,但到目前为止......我在模拟器中看到的只是无限对话框,没有别的。
我在我的开发电脑上使用 java 7。
以下是相关的代码片段:
ok.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent ae) {
String file=_cat+".mp3";
String path="/"+file;
Util.downloadUrlToStorage("http://abcde.com/images/"+file,path,true);
final InputStream is = Display.getInstance().getResourceAsStream(this.getClass(), path);
try {
Media mm = MediaManager.createMedia(is, "audio/mp3");
mm.play();
}
catch (IOException ex) {
ex.printStackTrace();
}
}
});
我怎样才能下载音频文件并在完成后播放?。 我根据 shai almog 的回答编辑了我的代码,如下所示:
ok.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent ae) {
String file=_cat+".mp3";
Util.downloadUrlToStorage("http://abcde.com/images/"+file,file,true);
try {
is = Storage.getInstance().createInputStream(file);
} catch (IOException ex) {
ex.printStackTrace();
}
try {
Media mm = MediaManager.createMedia(is, "audio/mp3");
mm.play();
}
catch (IOException ex) {
ex.printStackTrace();
}
.....仍然没有下载....我去
.CodenameOneStorage
我电脑上的目录,但那里什么也没有..我想 我错过了一些东西
getResourceAsStream
returns 流到 jar 中,是只读路径。它不是 "file",你不能在那里写。存储是一个简化的文件系统,与它无关。
您可以使用类似的东西:
Util.downloadUrlToStorage("http://abcde.com/images/"+file,file,true);
InputStream is = Storage.getInstance().createInputStream(file);