我正在使用Android应用程序,因此必须将文件下载到手机的本地存储中。 我正在使用本教程https://ionicframework.com/docs/native/file-transfer/。 我已经复制了download()方法。
我遵循了本指南,但是该方法始终返回错误,没有任何消息或状态。因此,我认为我的项目的配置存在问题。
下载是在这样的课程上进行的:
import { File, FileWriter } from '@ionic-native/file';
import { FileTransfer, FileTransferObject } from '@ionic-native/file-transfer';
...
@Component({
selector: 'balise',
templateUrl: 'balise.html'
})
export class BaliseComponent implements OnInit {
fileTransfer: FileTransferObject;
constructor( private http : HTTP, public loadingCtrl: LoadingController, private transfer : FileTransfer, private file : File )
{
console.log('Hello BaliseComponent');
this.fileTransfer = this.transfer.create();
}
ngOnInit() {
this.fileTransfer = this.transfer.create();
}
OnSaveClick(){
console.log(this.fileTransfer);
const url = 'http://www.example.com/file.pdf';
this.fileTransfer.download(url, this.file.dataDirectory + 'file.pdf')
.then((entry) => {
console.log('download complete: ' + entry.toURL());
})
.catch ( (error) => {
console.log('download error');
console.log(error.error);
console.log(error.status);
console.log(error.headers);
});
}
}
但是,OnSaveClick()回调始终会产生一个空错误。 此外,我在“ app.module.ts”文件中将File和FileTransfer声明为提供程序。 因此,本教程中的示例始终在我的项目中失败,没有任何消息或堆栈跟踪。我不知道怎么了。
你有什么主意吗? 我正在使用离子cli 4.8,cordova 8.1.2和java 8。
谢谢。