fluttercommunity / fluttercommunity/flutter_downloader
Path is not taking as given and downloading in Download folder only
- Dominant language
- Kotlin
- Stars
- 940
- Forks
- 561
- Avg merge
- 1h 18m
- Merged PRs (30d)
- 1
Description
I am getting issues while downloading videos from the server. I had given the path for Android as (`/storage/emulated/0/Movies/MyApp`) but It's downloading video in the "Download" folder only.
Here is my code:
```
requestDownloadFile(String link, bool isShare) async {
_permissionReady = await _checkPermission();
if (_permissionReady) {
FlutterDownloader.registerCallback(callback);
var _directory = Platform.isAndroid ? Directory('/storage/emulated/0/Movies/MyApp') : await getApplicationDocumentsDirectory();
String newPath = _directory.absolute.path;
print("Absolute Path: $newPath");
if(Platform.isIOS) {
newPath += '/MyApp';
}
_directory = Directory(newPath);
bool hasExisted = await _directory.exists();
if (!hasExisted) {
_directory.create();
}
_localPath = _directory.path;
print(_localPath);
String fileName = link.split('/').last;
print(fileName);
print(_localPath + '/' + fileName);
String localFilePath = _localPath + '/' + fileName;
if (await File(localFilePath).exists() && isShare) {
Share.shareFiles([localFilePath]);
} else {
ReceivePort _port = ReceivePort();
IsolateNameServer.registerPortWithName(_port.sendPort, 'downloader_send_port');
streamSubscription = _port.listen((dynamic data) {
DownloadTaskStatus status = data[1];
if (status.value == 3) {
print(fileName);
print('Downloaded Path: ${_localPath + ' / ' + fileName}');
streamSubscription.cancel();
IsolateNameServer.removePortNameMapping('downloader_send_port');
// Share only if clicked on share otherwise download
if (isShare) Share.shareFiles([_localPath + '/' + fileName]);
}
});
print('Path Before Downloading: $_localPath');
await FlutterDownloader.enqueue(url: link, savedDir: _localPath, showNotification: true, openFileFromNotification: true, fileName: fileName);
}
}
}
```
Here are the logs:
```
I/flutter (25574): Absolute Path: /storage/emulated/0/Movies/MyApp
I/flutter (25574): Directory: '/storage/emulated/0/Movies/MyApp'
I/flutter (25574): /storage/emulated/0/Movies/MyApp
I/flutter (25574): gbUG2Ag6LHA4UGoyG2agOeV6Uu03Thn8RVcsTu1Q.mp4
I/flutter (25574): /storage/emulated/0/Movies/MyApp/gbUG2Ag6LHA4UGoyG2agOeV6Uu03Thn8RVcsTu1Q.mp4
I/flutter (25574): Path Before Downloading: /storage/emulated/0/Movies/MyApp
D/DownloadWorker(25574): DownloadWorker{url=https://example.com/gbUG2Ag6LHA4UGoyG2agOeV6Uu03Thn8RVcsTu1Q.mp4,filename=gbUG2Ag6LHA4UGoyG2agOeV6Uu03Thn8RVcsTu1Q.mp4,savedDir=/storage/emulated/0/Movies/MyApp,header=,isResume=false
```
But after downloading its printing (from the library) as below:
```
D/DownloadWorker(25574): File downloaded (/storage/emulated/0/Download/gbUG2Ag6LHA4UGoyG2agOeV6Uu03Thn8RVcsTu1Q.mp4)
D/DownloadWorker(25574): Setting an intent to open the file /storage/emulated/0/Download/gbUG2Ag6LHA4UGoyG2agOeV6Uu03Thn8RVcsTu1Q.mp4
```
**Can you please tell me why it's downloading the video in the Download folder only? Why it's not taking the path I have given?**
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.