# m3u8_downloader **Repository Path**: flutter_libs/m3u8_downloader ## Basic Information - **Project Name**: m3u8_downloader - **Description**: m3u8下载 - **Primary Language**: Dart - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2020-07-08 - **Last Updated**: 2021-11-16 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # m3u8_downloader Flutter m3u8下载器。后台任务下载,支持加密下载。 只实现了Android端,并且只支持单m3u8视频下载(m3u8文件包含了多个ts文件,本质是多个ts同时下载)。 ## 安装 pubspec.yaml ```yaml dependencies: m3u8_downloader: git: url: https://github.com/lytian/m3u8_downloader.git ``` ## Android权限配置 ```xml ``` ## 使用 1. 页面初始化时,初始化下载器 ```dart WidgetsFlutterBinding.ensureInitialized(); M3u8Downloader.initialize(); ``` 2. 必须初始化完成后才能使用M3u8Downloader的其他方法 ```dart // 配置方法 M3u8Downloader.config(debugMode: true, saveDir: await _findSavePath()); // 下载方法 M3u8Downloader.download(url, callback); // 暂停下载 M3u8Downloader.pause(url); // 取消下载 M3u8Downloader.cancel(url, true); ///获取下载状态 M3u8Downloader.isRunning() // 通过url获取保存的路径 M3u8Downloader.getM3U8Path() ``` 3. 下载器本身是后台进程下载,看情况暂停和取消下载 4. download函数中的回调函数,必须是顶层的静态函数 ## 示例代码 具体代码请看[Example/lib/main.dart](https://github.com/lytian/m3u8_downloader/blob/master/example/lib/main.dart)