【发布时间】:2016-03-28 18:24:04
【问题描述】:
我遇到了 Cordova 文件传输的问题。 我想下载一个文件,似乎一切正常,我成功了,但根本没有下载文件。我花了一整天的时间试图弄清楚发生了什么,也许你能帮帮我吗?
这是我的代码:
JS:
...
$scope.downloadFile = function () {
// File for download
var url = "http://www.digitallanding.com/wp-content/uploads/2012/12/download-speed-test-630.jpg";
// Save location
var targetPath = cordova.file.externalDataDirectory + "TestFile.jpg";
// Trust every host certificate SSL
var trustHosts = true;
// Options to send
var options = {};
console.log(cordova.file.externalDataDirectory);
$cordovaFileTransfer.download(url, targetPath, options, trustHosts)
.then(function (result) {
console.log(result);
}, function (error) {
console.error(error);
}, function (progress) {
// After
})
});
}
...
HTML:
...
<ion-list>
<ion-item ng-click="downloadFile()">
<h2 class="icon ion-document"> Test download</h2>
</ion-item>
</ion-list>
...
这是我的成功日志:
这是我所拥有的:
- 已安装、配置(使用 CSP)和初始化 (v1.2.1) 的白名单插件
- 文件插件已安装 (+ ngcordova lib) 并已初始化 (v4.1.1)
- 文件传输插件已安装 (+ ngcordova lib) 并已初始化 (v1.5.0)
- 科尔多瓦 6.0.0
- HTC One M8 与 Android Marshmallow
我尝试在 config.xml 中添加:
<preference name="AndroidPersistentFileLocation" value="Compatibility" />
<preference name="AndroidExtraFilesystems" value="sdcard,cache" />
因为我认为可能是我手机的错误,没有结果。
我还补充了:
<allow-navigation href="*" />
<allow-intent href="*" />
<access origin="*" />
允许白名单不阻止任何东西,但也不改变。
对于这次成功/错误,我非常感谢一些帮助。
谢谢,
皮埃尔
【问题讨论】:
-
您的 javascript 不标准。它是 Angular,因此您应该在 ionic 论坛上发帖寻求有关此问题的帮助。
标签: cordova ionic-framework file-transfer