我有一个任务要从firebase下载文件,下载文件后,当我尝试保存文件时,如果我先前已授予权限,它将把我扔到控制台“ Permission denied”(拒绝权限)上。
我使用 File 和 Filetransfer 来完成此任务,并且我还尝试了HTTP本机,该本机具有“下载”文件的方法,但我此时已停止我必须在哪里保存文件。这是我的代码和控制台日志:
getPermission() {
this.androidPermissions.requestPermission(this.androidPermissions.PERMISSION.READ_EXTERNAL_STORAGE).then(
(data:any) => {
if(data.hasPermission) {
console.log("have permission", data.hasPermission);
this.guardar(this.imagen);
}
}, (err) =>
{
this.androidPermissions.requestPermission(this.androidPermissions.PERMISSION. WRITE_EXTERNAL_STORAGE);
});
}
这是保存图像时来自控制台的图像:
答案 0 :(得分:0)
代替请求权限,首先检查您是否具有许可权,否则阻止检查许可权,然后进一步执行操作
checkPermission() {
this.androidPermissions.hasPermission(this.androidPermissions.PERMISSION.READ_EXTERNAL_STORAGE)
.then(status => {
if (status.hasPermission) {
this.downloadFile();
}
else {
this.androidPermissions.requestPermission(this.androidPermissions.PERMISSION.READ_EXTERNAL_STORAGE)
.then(status => {
if(status.hasPermission) {
this.downloadFile();
}
});
}
});
}