gpt4 book ai didi

Android 从 HTML5 访问嵌入式 sqlite 数据库

转载 作者:行者123 更新时间:2023-11-28 03:44:43 24 4
gpt4 key购买 nike

在这里遇到一堵大砖墙。我有一个数据数据库,我需要将其打包到一个 sql lite 数据库中。我还需要能够从 javascript 中的 webview 查询这个数据库。尝试在 javascript 中查询数据库时,sql lite 返回错误代码 1,并显示消息“没有这样的表”。有什么想法吗?

这是js代码

    var database = window.openDatabase("testdb5", "", "main total", 1024 * 1024);

if (database)
document.write('got');

database.transaction(function (tx) {
tx.executeSql("SELECT * FROM testtable", [], function (tx, result) {
for (var i = 0, item = null; i < result.rows.length; i++) {
item = result.rows.item(i);
document.write(item.name);
}
});
});

这是相关的java:

    WebSettings settings = myWebView.getSettings();
settings.setJavaScriptEnabled(true);
settings.setDatabaseEnabled(true);

//String databasePath = this.getApplicationContext().getDir("database", Context.MODE_PRIVATE).getPath();
String databasePath ="/data/data/com.example.helloandroid/databases/";
settings.setDatabasePath(databasePath);

myWebView.setWebChromeClient(new WebChromeClient() {
@Override
public void onExceededDatabaseQuota(String url, String databaseIdentifier, long currentQuota, long estimatedSize,
long totalUsedQuota, WebStorage.QuotaUpdater quotaUpdater) {
quotaUpdater.updateQuota(estimatedSize * 2);
}
});

糟透了,没有这方面的文档!任何帮助深表感谢。

最佳答案

这是无望的。为了后代,我决定简单地创建一个 javascript interface并调用 native 与 sql lite 数据库交互的方法。

此解决方案的唯一问题是我的代码无法移植。我将不得不想出一些 hacky 解决方案来将它放在 IOS 上……这就是生活。

关于Android 从 HTML5 访问嵌入式 sqlite 数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7425452/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com