[英]Unable to open downloaded file in Android for flutter_downloader
[英]Unable to open downloaded file for flutter_downloader
我正在使用 flutter 下载器包来下载文件,但在我的情况下,下载成功完成,但我无法通过在通知中单击它来打开下载器文件,并且在我的手机文件中找不到它
这是我解决这个问题的代码
downloadFile(url) async {
final directory = await getExternalStorageDirectory();
print("the directory is :");
print(directory.path);
try {
final taskId = await FlutterDownloader.enqueue(
url: url,
savedDir: directory.path,
showNotification: true,
openFileFromNotification: true,
).then((value) async {
bool waitTask = true;
while (waitTask) {
String query = "SELECT * FROM task WHERE task_id='" + value + "'";
var _tasks =
await FlutterDownloader.loadTasksWithRawQuery(query: query);
String taskStatus = _tasks[0].status.toString();
int taskProgress = _tasks[0].progress;
if (taskStatus == "DownloadTaskStatus(3)" && taskProgress == 100) {
waitTask = false;
}
}
await FlutterDownloader.open(taskId: value);
});
print("the task id is :");
print(taskId);
} catch (e) {
print(e);
}
}
谁能知道这个问题的原因
请注意:我添加了权限
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.REQUEST_INSTALL_PACKAGES" />
while (waitTask) { String query = "SELECT * FROM task WHERE task_id='" + value! + "'"; var _tasks = await FlutterDownloader.loadTasksWithRawQuery(query: query); String taskStatus = _tasks![0].status.toString(); int taskProgress = _tasks[0].progress; if (taskStatus == "DownloadTaskStatus(3)" && taskProgress == 100) { waitTask = false; } }
替换这些行。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.