如何使用cordova-plugin-file在iOS中保存文件

问题描述 投票:1回答:1

我正在使用cordova-plugin-file将数据图像保存到用户iOS手机。这是我的代码

saveBlobAsImageFile(folderpath, filename, blob) {
      let vm = this;
      const onError = function(msg) {
        vm.$notify({
          message: vm.$t("Poster.save.errorLocal"),
          background: "#b41800"
        });
      };

      window.resolveLocalFileSystemURL(folderpath, function(dir) {
        console.log("Access to the directory granted succesfully");
        dir.getFile(filename, { create: true }, function(file) {
          console.log("File created succesfully.");
          file.createWriter(function(fileWriter) {
            console.log("Writing content to file");
            fileWriter.write(blob);
            vm.$notify({
              message: vm.$t("Poster.save.successLocal"),
              background: "#04A777"
            })
          }, onError);
        }, onError);
      }, onError);
    }

对于folderpath:我尝试了所有这5种方法:

let folderpath = cordova.file.syncedDataDirectory;
let folderpath1 = cordova.file.documentsDirectory; 
let folderpath2 = cordova.file.dataDirectory;
let folderpath3 = cordova.file.cacheDirectory;
let folderpath4 = cordova.file.tempDirectory;

运行功能保存后,日志显示写入成功,但是当我进入模拟器/ iphone中的文件或库时。我找不到任何东西。我有什么需要设置的吗?

更新:当我在模拟器中运行时,单击保存后,我在Mac的这些文件夹中找到了保存的文件:

file:///Users/ngoctuan001/Library/Developer/CoreSimulator/Devices/2964FE69-A5FE-4516-B8F1-C45488DBE2B5/data/Containers/Data/Application/1EF9FF0C-903E-481F-87A0-9A1CEDA4DE5D/Library/Cloud/
file:///Users/ngoctuan001/Library/Developer/CoreSimulator/Devices/2964FE69-A5FE-4516-B8F1-C45488DBE2B5/data/Containers/Data/Application/1EF9FF0C-903E-481F-87A0-9A1CEDA4DE5D/Documents/
file:///Users/ngoctuan001/Library/Developer/CoreSimulator/Devices/2964FE69-A5FE-4516-B8F1-C45488DBE2B5/data/Containers/Data/Application/1EF9FF0C-903E-481F-87A0-9A1CEDA4DE5D/Library/NoCloud/
file:///Users/ngoctuan001/Library/Developer/CoreSimulator/Devices/2964FE69-A5FE-4516-B8F1-C45488DBE2B5/data/Containers/Data/Application/1EF9FF0C-903E-481F-87A0-9A1CEDA4DE5D/Library/Caches/

但是,当我转到模拟器文件和库时,找不到这些图像,似乎它们保存在错误的路径中?

javascript ios cordova wkwebview phonegap
1个回答
0
投票

我改为更改为cordova-plugin-x-social-sharing以保存到照片。似乎触摸android之类的iOS文件系统并不容易。如果有帮助。

© www.soinside.com 2019 - 2024. All rights reserved.