2016-05-07 3 views
0
function creatingFolder(fileSystem) { 
      var entry = fileSystem.root; 
      entry.getDirectory("productpictures", {create: true, exclusive: false}, win, error); 
      window.newfolder = fileSystem.root.toURL()+"/productpictures"; 

     } 

     function win(dir) { 
      alert("Created dir with name: "+dir.name); 
      alert("Created dir at: "+dir.toURL()); 
      alert("Created dir NativePath: " + dir.nativeURL); 
      alert('done '+window.newfolder); 
     } 

     function error(error){ 
       alert('hmm: '+error.code+' message: '+error.message); 
     } 

Хорошо, поэтому [productpictures] - это папка, которую создаст мое приложение, и пользователи приложения смогут загружать файлы в эту папку [productpictures]. Мой вопрос в том, как разрешить пользователям моего приложения доступ к этой папке [productpictures] после закрытия приложения. Теперь, когда я создаю эту папку на реальном Android-устройстве, путь следующий: file: ///data/data/com.packagename/files/files/productpictures.cordova создать папку внутри sdcard - внутренняя или внешняя

Итак, мы можем создать эту папку где-нибудь еще, где пользователи Android-устройств могут легко получить доступ даже после закрытия приложения. Я хочу создать эту папку [productpictures] на месте, например, sdcard/productpictures, или в галерею Android Photo или Загрузить папку на Android-устройстве.

Другой код, который я пробовал, но не работал;

function creatingFolder(fileSystem) { 
      var entry = fileSystem.root; 
      entry.getDirectory(cordova.file.externalRootDirectory+"/productpictures", {create: true, exclusive: false}, win, error); 
      window.newfolder = cordova.file.externalRootDirectory+"/productpictures"; 

     } 

Итак, не нашли ресурса в Интернете для его совершения. Я хочу эту функцию, потому что пользователи должны иметь возможность отправлять или распространять файлы внутри папки [productpictures] и иметь эту папку внутри такого местоположения, как файл: //data/data/com.package/files/files/productpictures является слишком сложным.

Благодарим за помощь.

ответ

1

Этот пример кода позволяет создавать папку в корневом каталоге внешнего в папку Android и документы в прошивкой:

function writeFile() { 
      if (sessionStorage.platform.toLowerCase() == "android") { 
       window.resolveLocalFileSystemURL(cordova.file.externalRootDirectory, onFileSystemSuccess, onError); 
      } else { 
       window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, onFileSystemSuccess, onError); 
      } 
    }  

    function onError(e) { 
     alert("onError"); 
    }; 

    function onFileSystemSuccess(fileSystem) { 
     var entry = ""; 
     if (sessionStorage.platform.toLowerCase() == "android") { 
      entry = fileSystem; 
     } else { 
      entry = fileSystem.root; 
     } 
     entry.getDirectory("Folder_Name", { 
      create: true, 
      exclusive: false 
     }, onGetDirectorySuccess, onGetDirectoryFail); 
    }; 

    function onGetDirectorySuccess(dir) { 
     dir.getFile(filename, { 
      create: true, 
      exclusive: false 
     }, gotFileEntry, errorHandler); 
    }; 

    function gotFileEntry(fileEntry) { 
     // logic to write file in respective directory 
    }; 

    function errorHandler(e) { 
     // handle error 
    } 

 Смежные вопросы

  • Нет связанных вопросов^_^