我正在Windows Phone 8上创建一个应用程序,该应用程序需要从Dropbox,skydrive等下载大型视频文件(>1GB或2 GB),并将它们保存到Windows Phone音乐和视频文件夹中。
所以我的问题是:
- 如何将大文件下载到块中,以便我可以避免内存不足Excepetion。
- 现在,我可以将较小的视频文件保存到相机胶卷文件夹中。如何将视频文件保存到Windows音乐视频文件夹中?
永远不需要这样做,所以请原谅我答案的准确性
我建议您尝试使用底层流。 如果是 Web 请求,请尝试插入响应流。接下来,打开流(到isostore中的文件)并附加到它。
我只使用LiveConnect上传......从不下载,但是检查Live Connect/rest api以查看您是否可以轻松发出Web请求。
看看这个SO帖子如何在 c# 中将大文件拆分为块?
-
假设服务器支持它,则可以使用 HTTP
Range
标头来指定服务器应返回文件的哪些字节以响应请求。
然后,您发出多个请求以将文件分成几部分,然后将其全部放在设备上。 -
SDK 目前不支持将视频保存到设备库中的方法。您可以做的最接近的事情是将文件保存在应用程序的隔离存储中,然后将该项目添加到库中的新列表中(通过
WriteAcquiredItem
)。