我是phoneGap和新手javascript程序员的新手。我创建了一个简单的应用程序,它适用于phonegap构建。我可以上传文件,它给了我一个Android应用程序或ios应用程序。我需要做的是让应用程序保存首选项文件。例如。我有一个带有单选按钮的设置屏幕,允许用户选择......如果他们想在应用程序中使用蓝色或黑色背景,或者他们想要打开或关闭声音。它可以正常工作,直到你重新加载应用程序,然后它回到默认设置,因为我没有选择保存设置。是否可以将首选项保存到文本或xml文件并将其保存到设备?我不知道从哪里开始或如何获得javascript来创建文件以保存在移动设备上,甚至在我的本地计算机上。有人能指出我正确的方向吗?
答案 0 :(得分:1)
使用本地存储数据库。它可以帮助您保存高达5 MB的数据。像这样的小东西可以轻松存储。
保存在localstorage中
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>
如果您需要设置一些偏好,我相信本地存储会更好。只需根据它从本地存储$ apply css检查页面加载中的首选项。