Внедрить файл уведомлений о загрузке 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();
        });

Если бы у кого-то был веб-сайт с примером того, как он реализован правильно, я был бы признателен, так как сейчас я несколько заблокирован и не могу найти решение.

Помощь, оказанная заранее, высоко ценится

0 ответов

Другие вопросы по тегам