For Personal use only, It's forked from https://github.com/Crdzbird/flowder\ Handle your file downloads status in a more simple and easy way 💓
dependencies:
flowder: ^0.2.0
To start using flowder, is required to do the following setup.
fina downloaderUtils = DownloaderUtils(
progressCallback: (current, total) {
final progress = (current / total) * 100;
print('Downloading: $progress');
},
file: File('$path_to_store_file/200MB.zip'),
progress: ProgressImplementation(),
onDone: () => print('Download done'),
deleteOnCancel: true,
);
final core = await Flowder.download(
'http://ipv4.download.thinkbroadband.com/200MB.zip',
downloaderUtils);
To start a new download.
core.download(url, downloaderUtils);
To resume a download.
core.resume();
To cancel a download.
core.cancel();
To pause a download.
core.pause();
If you require an example using internet connection checker, please go to the folder advanced example. The stack used is:
- get_it
- injectable
- riverpod
- path_provider
- connectivity_plus (this is the best plugin to check internet connection, the others were buggy 😢
- dio.
- Permission_handler
-
Download states.
-
Handle multiple downloader.
-
Advanced example using internet connection checker.
All contributions are welcome!
If you like this project then please click on the 🌟 it'll be appreciated or if you wanna add more epic stuff you can submite your pull request and it'll be gladly accepted 🙆♂️
or if you have an idea please let me know with a new issue.