PhoneGap Build - 如何将文件保存到移动设备?
Posted
技术标签:
【中文标题】PhoneGap Build - 如何将文件保存到移动设备?【英文标题】:PhoneGap Build - How do I Save a file to a mobile device? 【发布时间】:2015-03-19 16:04:02 【问题描述】:我是 phoneGap 的新手,也是一名 javascript 程序员新手。我创建了一个简单的应用程序,它适用于 phonegap 构建。我可以上传文件,它给了我一个 android 应用程序或 ios 应用程序。我需要做的是让应用程序保存一个首选项文件。例如。我有一个带有单选按钮的设置屏幕,允许用户选择……如果他们想要应用程序中的蓝色或黑色背景,或者他们想要打开或关闭声音。它工作正常,直到您重新加载应用程序,然后它恢复到默认设置,因为我没有保存设置的选项。是否可以将首选项保存到文本或 xml 文件并将其保存到设备中?我不知道从哪里开始,甚至不知道如何让 javascript 创建一个文件以保存在移动设备上,甚至是我的本地计算机上。有人能指出我正确的方向吗?
【问题讨论】:
【参考方案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。
【讨论】:
以上是关于PhoneGap Build - 如何将文件保存到移动设备?的主要内容,如果未能解决你的问题,请参考以下文章
如何将文件保存到 iOS 的 Library/NoCloud 文件夹?
WebView 应用程序(PhoneGap Build),重启后不保存 localStorage
如何使用 Phonegap 命令行工具为 iOS 发布 Build?