v0.5.5flutter_download_manager
Flutterダウンロードマネージャーは、再開可能、並列およびバッチダウンロードをサポートするクロスプラットフォームのファイルダウンローダーです。また、ダウンロード状態や進行状況の更新について通知を受け取ることができます
Flutterダウンロードマネージャーは、再開可能、並列およびバッチダウンロードをサポートするクロスプラットフォームのファイルダウンローダーです。また、ダウンロード状態や進行状況の更新について通知を受け取ることができます
{"sdk":"flutter"}^5.0.2—{"sdk":"flutter"}^2.0.1以下は英語原文のスナップショットです。最新版は GitHub をご覧ください。
pub package pub points popularity likes |
Flutter Download Manager is a Cross-Platform file downloader with Parallel and Batch Download support. Manage download tasks by url and be notified of status and their progress. Pause, Cancel, Queue and Resume Downloads.
This package was made as I felt like there are no download managers in flutter, specially with desktop support.
alt Example
There are a few caveats about this package:
In your pubspec.yaml file add:
dependencies:
flutter_download_manager: any
Then, in your code import:
import 'package:flutter_download_manager/flutter_download_manager.dart';
Please refer to /example folder for a working example.
var dl = DownloadManager();
var url = "adasdad.com/asda.sdas";
await dl.addDownload(url, "./test.sdas");
DownloadTask? task = dl.getDownload(url4);
task?.status.addListener(() {
print(task.status.value);
});
task?.progress.addListener(() {
print(task.progress.value);
});
await dl.whenDownloadComplete(url4);
DownloadTask? task = dl.getDownload(url4);
task?.status.addListener(() {
print(task.status.value);
});
DownloadTask? task = dl.getDownload(url4);
task?.progress.addListener(() {
print(task.progress.value);
});
DownloadTask? task = dl.getDownload(url4);
await task.whenDownloadComplete();
var dl = DownloadManager();
dl.cancelDownload(url5);
var dl = DownloadManager();
dl.pauseDownload(url5);
var dl = DownloadManager();
dl.resumeDownload(url5);
var dl = DownloadManager();
var urls = <String>[];
urls.add(url2);
urls.add(url3);
urls.add(url);
await dl.addDownload(url2, "./test2.ipa");
await dl.addDownload(url3, "./test3.ipa");
await dl.addDownload(url, "./test.ipa");
var downloadProgress = dl.getDownloadProgress(urls);
downloadProgress.addListener(() {
print(downloadProgress.value);
});
await dl.whenDownloadsComplete(urls);
var dl = DownloadManager();
var urls = <String>[];
urls.add(url2);
urls.add(url3);
urls.add(url);
dl.addBatchDownloads(urls, "./");
var dl = DownloadManager();
var urls = <String>[];
urls.add(url6);
urls.add(url5);
urls.add(url);
dl.cancelDownloads(urls);
var dl = DownloadManager();
var urls = <String>[];
urls.add(url2);
urls.add(url3);
var downloadProgress = dl.getDownloadProgress(urls);
downloadProgress.addListener(() {
print(downloadProgress.value);
});
var dl = DownloadManager();
var urls = <String>[];
urls.add(url2);
urls.add(url3);
urls.add(url);
await dl.whenDownloadsComplete(urls);
[] Add in Shared Preference to survive app shutdown
enum DownloadStatus { queued, downloading, completed, failed, paused, canceled }