【问题标题】:PhoneGap Build - How do I Save a file to a mobile device?PhoneGap Build - 如何将文件保存到移动设备?
【发布时间】:2015-03-19 16:04:02
【问题描述】:

我是 phoneGap 的新手,也是一名 JavaScript 程序员新手。我创建了一个简单的应用程序,它适用于 phonegap 构建。我可以上传文件,它给了我一个 android 应用程序或 ios 应用程序。我需要做的是让应用程序保存一个首选项文件。例如。我有一个带有单选按钮的设置屏幕,允许用户选择……如果他们想要应用程序中的蓝色或黑色背景,或者他们想要打开或关闭声音。它工作正常,直到您重新加载应用程序,然后它恢复到默认设置,因为我没有保存设置的选项。是否可以将首选项保存到文本或 xml 文件并将其保存到设备中?我不知道从哪里开始,甚至不知道如何让 javascript 创建一个文件以保存在移动设备上,甚至是我的本地计算机上。有人能指出我正确的方向吗?

【问题讨论】:

    标签: javascript android ios cordova save


    【解决方案1】:

    使用本地存储数据库。它将帮助您保存高达 5 mb 的数据。像这样的小东西可以轻松存放。

    保存在本地存储中使用

    localStorage.setItem("key",value);
    

    找回来

    mysettingvar1=localStorage.getItem("key");
    

    如果您仍想将其保存在文件中,则有文件插件。 Installation & documentation are in this link

    文件编写示例

    <!DOCTYPE html>
    <html>
      <head>
        <title>FileWriter Example</title>
    
        <script type="text/javascript" charset="utf-8" src="cordova.js"></script>
        <script type="text/javascript" charset="utf-8">
    
        // Wait for device API libraries to load
        //
        document.addEventListener("deviceready", onDeviceReady, false);
    
        // device APIs are available
        //
        function onDeviceReady() {
            window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, gotFS, fail);
        }
    
        function gotFS(fileSystem) {
            fileSystem.root.getFile("readme.txt", {create: true, exclusive: false}, gotFileEntry, fail);
        }
    
        function gotFileEntry(fileEntry) {
            fileEntry.createWriter(gotFileWriter, fail);
        }
    
        function gotFileWriter(writer) {
            writer.onwriteend = function(evt) {
                console.log("contents of file now 'some sample text'");
                writer.truncate(11);
                writer.onwriteend = function(evt) {
                    console.log("contents of file now 'some sample'");
                    writer.seek(4);
                    writer.write(" different text");
                    writer.onwriteend = function(evt){
                        console.log("contents of file now 'some different text'");
                    }
                };
            };
            writer.write("some sample text");
        }
    
        function fail(error) {
            console.log(error.code);
        }
    
        </script>
      </head>
      <body>
        <h1>Example</h1>
        <p>Write File</p>
      </body>
    </html>
    

    如果您需要设置一些偏好,我相信本地存储会更好。只需从本地存储检查页面加载中的首选项 $ 根据它应用 css。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-01-23
      • 1970-01-01
      • 1970-01-01
      • 2010-09-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多