Ionic 2 fileTransfer.download 对 iOS 没有反应

Ionic 2 fileTransfer.download not reacting on iOS

我已经在 Android 上开发了一个 Ionic 2 应用程序,现在正试图让它在 iOS 上运行。

该应用程序会在初始登录时下载大量文件,我使用 Ionic-Native Transfer plugin 执行此操作。在 Android 上一切正常,但在 iOS 上应用程序似乎卡在了 fileTransfer.download() 函数的承诺中,它甚至没有抛出错误。

示例代码:

private downloadFile(downloadURL: string, filename: string) {
    return new Promise((resolve, reject) => {
        this.fileTransfer.download(downloadURL, this.file.dataDirectory + filename, true).then(_ => {
            console.log("download of " + filename + " complete");
            resolve("download finished");
        }).catch(err => {
            console.log(err);
            reject("download error");
        });
    });
}

我也尝试使用 this.file.documentsDirectory 代替 iOS,但我仍然没有收到任何错误或成功输出。

下载URL来自 firebaseStorage link,但我也使用普通下载 URL.

对其进行了测试

我想应该是跟权限有关,但是还没找到解决办法。另一个假设是,iOS 上的多个线程存在限制,大约有 30-100 个承诺存在。

但奇怪的是缺少错误消息,它只是卡住了,没有一个下载完成。

感谢任何帮助!

编辑:

我还没有弄清楚问题的原因,但与此同时,Ionic 发布了新版本的 Transfer Plugin,现在在官方文档中称为 FileTransfer。一旦我更改代码以使用新的 FileTransfer 插件,问题就消失了。

我希望这对遇到同样问题的其他人有所帮助。

我还没有弄清楚问题的原因,但与此同时,Ionic 发布了新版本的 Transfer Plugin,现在在官方文档中称为 FileTransfer。一旦我更改代码以使用新的 FileTransfer 插件,问题就消失了。

我希望这对遇到同样问题的其他人有所帮助。