Внедрить файл уведомлений о загрузке ionic 3
У меня следующая дилемма, я работаю с Ionic 3, и у меня есть класс, который загружает файл с URL-адреса, который приносит мне службу REST. Эта загрузка файла без проблем, но я не знал, как реализовать, или я не искал правильно, чтобы добавить уведомление о загрузке, как показано в следующей ссылке: ionic 2 показать ход загрузки файла в уведомлении
Внутри ссылки есть 2 ответа, соответствующие тому, как добавить библиотеку, но я не знаю, совместимы ли они также с IOS, так как они нужны мне для android и IOS. В настоящее время я работаю с file.transfer, чтобы сохранить файл на устройстве. Я оставляю код ниже:
this.platform.ready().then(() => {
this.databaseService.getSesion(2).then(result => {
this.rutUsuario = result.valor;
})
.catch( error => {
});
if (this.platform.is('ios')) {
this.storageDirectory = cordova.file.documentsDirectory;
}
else if(this.platform.is('android')) {
this.storageDirectory = cordova.file.externalRootDirectory + '/Download/';
/**
* Permisos de Android
*/
this.androidPermissions.checkPermission(this.androidPermissions.PERMISSION.READ_EXTERNAL_STORAGE).then(
result => {
if (result.hasPermission) {
// code
} else {
this.androidPermissions.requestPermission(this.androidPermissions.PERMISSION.READ_EXTERNAL_STORAGE).then(result => {
if (result.hasPermission) {
// code
}
});
}
},
err => this.androidPermissions.requestPermission(this.androidPermissions.PERMISSION.READ_EXTERNAL_STORAGE)
);
}
else {
// exit otherwise, but you could add further types here e.g. Windows
return false;
}
});
}
if(respuesta.status == "200") {
let autorizacion = this.resultado.headers;
let nombreArchivo = datos.split("tmp/");
let urlFinal = datos;
fileTransfer.download(urlFinal , this.storageDirectory + nombreArchivo[1]).then((entry) => {
this.alerta("Se ha descargado el archivo de manera satisfactoria.");
this.loading.dismissAll();
this.databaseService.GuardaSQLlite(1, autorizacion.authorization);
this.navCtrl.setRoot(HomePage);
}, (error) => {
this.alerta("Hubo un error al momento de descargar el archivo. Si el problema persiste favor contactarse al 816 35 12 o 816 35 09.");
this.loading.dismissAll();
});
Если бы у кого-то был веб-сайт с примером того, как он реализован правильно, я был бы признателен, так как сейчас я несколько заблокирован и не могу найти решение.
Помощь, оказанная заранее, высоко ценится