【发布时间】:2014-05-01 11:46:38
【问题描述】:
我想录制流媒体广播
现在这是我的代码
press.setOnClickListener(new OnClickListener()
{
@Override
public void onClick(View v) {
String filename = Environment.getExternalStorageDirectory().getAbsolutePath();
filename += "/music.mp3";
outputSource= new File(filename);
bytesRead = -1;
URL url;
try {
url = new URL("** URL **");
inputStream = url.openStream();
Log.d(LOG_TAG, "url.openStream()");
fileOutputStream = new FileOutputStream(outputSource);
Log.d(LOG_TAG, "FileOutputStream: " + outputSource);
while ((c = inputStream.read()) != -1) {
fileOutputStream.write(c);
bytesRead++;
}
} catch (MalformedURLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
});
当我点击按钮时它连续运行并且无法停止,当我点击停止按钮时它告诉我程序没有响应我必须等待或退出
那么我如何在单击录制按钮时开始录制并在单击停止按钮时停止录制?
【问题讨论】:
-
您无法在主线程上执行网络 UI 操作。您必须使用 AsyncTask 或 Thread。还要在 runOnUiThread() 方法中更新你的 UI。
标签: android inputstream record fileoutputstream