第一次用户启动应用程序时,我必须下载并存储大量音频( .mp3 )和图像。 单个图像和音频文件的大小很小,两者大致相同。图像数量是音频的两倍。因此,为了下载图像,我正在使用Volley ,它运行完美且速度非常快。至于音频文件,我使用以下代码:
URL url = new URL(urlString);
URLConnection connection = url.openConnection();
connection.connect();
InputStream input = new BufferedInputStream(url.openStream());
FileOutputStream output = new FileOutputStream(file);
byte data[] = new byte[1024];
while((count = input.read(data)) != -1) {
output.write(data, 0, count);
}
output.flush();
问题在于,与以相同网络速度下载图像的过程相比,上述下载和存储音频文件的过程需要很长时间才能完成。所以,为什么这个过程需要这么长时间,有没有办法加快这个过程,可能与凌空速度相提并论?
答案 0 :(得分:0)
使用多线程可能会有所改进。
您可以创建可运行线程列表并迭代每个线程并逐个启动所有线程。
给每个帖子提供一些文件。
不要忘记对所有线程使用join()方法。
希望这有助于你