Плагин Cordova для файлов изменяет местоположение хранилища для iOS

#javascript #ios #cordova #mobile

#язык JavaScript #iOS #кордова #Мобильный

Вопрос:

Я пытаюсь использовать cordova-plugin-file для сохранения файла, созданного в приложении, в хранилище телефона и, если возможно, в папке «Документы» или «Файлы». Файл сохраняется, я вижу его путь, но не могу получить доступ к его местоположению, когда я на iOS, потому что он находится за пределами Files каталога. Это мой код, и он работает для Android.

Я также добавил внутри config.xml следующее:

 lt;preference name="iosPersistentFileLocation" value="Compatibility" /gt;  

………

 const mimeType = 'application/json'; const filename = 'test.json'; const data = await this.http.get(`${environment.backUrl}/get-data`).toPromise(); const jsonString = JSON.stringify(data, null, 't'); const blob = new Blob([jsonString], { type: mimeType });   if (window.cordova amp;amp; window.cordova?.platformId !== 'browser') {  document.addEventListener('deviceready', () =gt; {  let storageLocation = '';   if (window.cordova?.platformId === 'android') {  storageLocation = window.cordova.file.externalRootDirectory   'Documents/';  }  if (window.cordova?.platformId === 'ios') {  storageLocation = window.cordova.file.documentsDirectory;  }   (window as any).resolveLocalFileSystemURL(  storageLocation, (dir) =gt; {  dir.getFile(  filename, {create: true},  (file) =gt; {  file.createWriter(  (fileWriter) =gt; {  fileWriter.write(blob);   fileWriter.onwriteend = () =gt; {  let url = file.toURL();   alert('File Saved inside: '   url);  };   fileWriter.onerror = (err) =gt; {  alert('File not saved');  console.error(err);  };  }  );  }  );  }  );  }); }