Я работаю над приложением для 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 () всегда приводит кпустая ошибка.Более того, я объявил File и FileTransfer в качестве провайдеров в файле app.module.ts.Таким образом, пример из учебника всегда терпел неудачу в моем проекте, без каких-либо сообщений или трассировки стека.Я не знаю, что не так.
Есть идеи?Я пользуюсь ionic cli 4.8, cordova 8.1.2 и java 8.
Спасибо.