无法下载大于3.5mb的视频文件

时间:2017-11-23 10:10:44

标签: java android video

我能够成功发送任意大小的编码视频字节[](字符串),来自服务器的响应,但在移动中下载时,当请求的视频超过3.5mb(大约)时,我总是会遇到MemoryOutOfBoundException ,否则工作正常。

以下代码是我目前正在使用的代码。

String image = (encoded byte[] in form of string from server);
byte[] byteImageData = new byte[image.length()];
byteImageData = Base64.decode(image, Base64.DEFAULT);
System.gc();

BufferedOutputStream out = null;
try {
    out = new BufferedOutputStream(new FileOutputStream(file));
    out.write(byteImageData);
    out.flush();
} catch (IOException e) {
    e.getMessage();
}
finally {
    if (out != null) {
    out.close();
}
System.gc();

所有我需要的是移动设备应该足够下载至少20mb。 有人可以帮我解决这个问题吗?

1 个答案:

答案 0 :(得分:0)

我建议使用Android的下载管理器https://developer.android.com/reference/android/app/DownloadManager.html

然后检查注册广播接收器以收听文件下载。

请查看此示例:http://blog.vogella.com/2011/06/14/android-downloadmanager-example/