我正在使用apache cordova开发一个QA类型的应用程序。并计划在iOS和Android中使用此应用程序。 QA表单是HTML文件,这些文件应在iOS和Android应用程序的Webview中查看。在应用程序中有许多QA表单。每个QA表单可能有多个数据输入选项,如文本字段,单选按钮,日期选择器等。所有这些HTML表单都有一个提交按钮,当用户点击提交按钮时,数据将使用Web服务上传到服务器。 / p>
我会在这里解释我的问题。部署应用程序后,HTML文件可能会更改。我想将HTML文件中的更新反映到应用程序(iOS和Android)中。我可以通过将所有HTML内容保存在SQLite表中并从iOS和Android应用程序访问SQLite来实现此目的。我的概念是,预先填充SQLite数据库并部署应用程序并使用Web服务根据HTML文件中所做的更改来更新表。我知道我不能将SQLite DB保存在android应用程序的资产文件夹中,因为我无法在运行时更新它。怎么样 您对如何使用HTML内容预填充SQLite数据库并在运行时从iOS和Android应用程序更新它有任何建议吗?
答案 0 :(得分:0)
是。你可以创建&从Javascript实时编辑您的SQLlite数据库。将代码放在任何JS中,并在您的应用页面上包含JS。下面的示例代码:这是我目前在IOS和IOS中使用的代码的一小部分。 Android应用。它不需要Cordova,但在Cordova / PhoneGap应用程序中运行良好。
var db = window.openDatabase("myDB", "1.0", "my DB", 20000000); // create / Open SQLite Database
db.transaction(function (tx) {
tx.executeSql('CREATE TABLE IF NOT EXISTS CodeDecode (id INTEGER PRIMARY KEY AUTOINCREMENT, RefTable VARCHAR(10), RefVal VARCHAR(50), SortOrder INT)');
tx.executeSql('INSERT INTO CodeDecode (RefTable, RefVal, SortOrder) VALUES ("Type","R",2)');
tx.executeSql('INSERT INTO CodeDecode (RefTable, RefVal, SortOrder) VALUES ("Type","H",1)');
tx.executeSql('INSERT INTO CodeDecode (RefTable, RefVal, SortOrder) VALUES ("Cal","22",1)');
tx.executeSql('INSERT INTO CodeDecode (RefTable, RefVal, SortOrder) VALUES ("Cal","9",2)');
});