2016-11-20 1 views
2

제출할 때 양식 데이터가 txt 파일에 저장되는 백본 js로 앱을 만듭니다. 그것은 창에서 제대로 작동합니다. 여기 내 코드입니다 : 모바일 앱에 양식 데이터 저장

var pom = document.createElement('a'); 
pom.setAttribute('href', 'data:text/plain;charset=utf-8,' + encodeURIComponent(mytext)); 
pom.setAttribute('download', filename); 
pom.style.display = 'none'; 
document.body.appendChild(pom); 
pom.click(); 
document.body.removeChild(pom); 

다음 나는 코르도바하여 APK를 만들었습니다. 모바일에 APK를 설치하고 양식을 제출하면 txt 파일이 내 모바일에 저장되지 않습니다. 무엇이 문제입니까? 휴대 기기의 앱에 양식 데이터를 저장하는 다른 방법이 있습니까?

답변

0

문서를 기기에 저장하려면 파일 플러그인을 사용해야합니다. 파일을 저장할 위치에 대한 OS의 사이

https://github.com/apache/cordova-plugin-file

주 차이. 아래

일부 예제 코드 :이 다음 파일을 생성

function writeToFile(fileName, data) { 
window.resolveLocalFileSystemURL(cordova.file.externalRootDirectory, function (directoryEntry) { 
    directoryEntry.getFile(fileName, { create: true }, function (fileEntry) { 
     fileEntry.createWriter(function (fileWriter) { 
      fileWriter.onwriteend = function (e) { 
       // for real-world usage, you might consider passing a success callback 
       console.log('Write of file "' + fileName + '" completed.'); 
      }; 
      fileWriter.onerror = function (e) { 
       // you could hook this up with our global error handler, or pass in an error callback 
       console.log('Write failed: ' + e.toString()); 
      }; 
      var blob = new Blob([data], { type: 'text/plain' }); 
      fileWriter.write(blob); 
     }, errorHandler.bind(null, fileName)); 
    }, errorHandler.bind(null, fileName)); 
}, errorHandler.bind(null, fileName)); 
} 

는 파일에 데이터라는 변수를 기록합니다. 나는 그것을주고 싶은 파일 이름을 준다.