如何从在线下载视频并将其存储在本地设备上,然后使用视频播放器在 Flutter 应用程序上播放视频?
Posted
技术标签:
【中文标题】如何从在线下载视频并将其存储在本地设备上,然后使用视频播放器在 Flutter 应用程序上播放视频?【英文标题】:How to Download Video from Online and store it local Device then play video on Flutter apps Using video player? 【发布时间】:2020-05-13 20:45:06 【问题描述】:我想开发一个 Flutter 应用程序,用户可以通过一个按钮从在线下载所有视频并将其存储在本地设备上,然后在 Flutter 应用程序上离线播放这些视频使用视频播放器?
我通过资产视频做到了这一点。但是如果我使用资产中的视频并构建应用程序,那么 apk 的大小会更大。这就是为什么我想制作这个颤振应用程序,用户打开应用程序并单击一个按钮,按下通过所选小部件中的链接从预定义服务器下载的列表视频。然后用户可以通过视频播放器播放这些视频。
【问题讨论】:
【参考方案1】:您可能想尝试dio 包,它是一个支持文件下载并将其本地保存到给定路径的http客户端。
这是一个代码示例(来源:iampawan's Github)
Future downloadFile(String url) async
Dio dio = Dio();
try
var dir = await getApplicationDocumentsDirectory();
await dio.download(url, "$dir.path/myFile.txt", onProgress: (rec, total)
print("Rec: $rec , Total: $total");
);
catch (e)
print(e);
print("Download completed");
【讨论】:
旁注,你需要 path_provider 包来使用 getApplicationDocumentsDirectory() 函数pub.dev/packages/path_provider以上是关于如何从在线下载视频并将其存储在本地设备上,然后使用视频播放器在 Flutter 应用程序上播放视频?的主要内容,如果未能解决你的问题,请参考以下文章