0

Android 4.1.1 で Web ビューから HTML5 SQL ストレージを使用しようとしています。

ブラウザー (デスクトップまたは Android デバイスのいずれか) では、私のコードは正常に動作しますが、Android の WebView で実行しようとすると、次のエラーが発生します: Uncaught ReferenceError: openDatabase is not defined

このトピックについてよく読みましたが、Android がこの機能をサポートしているかどうかは不明です。Android v2.x では十分にサポートされていたようですが、制限により v4.x 以降ではサポートされていません。

それについての情報を知っていますか?

私は以下の通りで、webviewを開始しています:

webViewMenu = (WebView) findViewById(R.id.webViewMenu);
// Add javascripInterface to the webviews
webViewMenu.addJavascriptInterface(myJavaScriptInterface, "AndroidFunction");
// Open webview with Chrome
webViewMenu.setWebChromeClient(new WebChromeClient(){
    @Override
public void onExceededDatabaseQuota(String url, String
databaseIdentifier, long currentQuota, long estimatedSize,
long totalUsedQuota, WebStorage.QuotaUpdater quotaUpdater) {
quotaUpdater.updateQuota(estimatedSize * 2); // try to keep quota size as big as possible else database will not get created in HTML 5 app
}
});
WebSettings settingsMenu = webViewMenu.getSettings();
settingsMenu.setJavaScriptEnabled(true);
settingsMenu.setDatabaseEnabled(true);
settingsMenu.setDomStorageEnabled(true);
settingsMenu.setJavaScriptCanOpenWindowsAutomatically(true);
String databasePath = this.getApplicationContext().getDir("database", Context.MODE_PRIVATE).getPath();
settingsMenu.setDatabasePath(databasePath);

JS からデータベースを開く:

dbModels = openDatabase ("models", "1.0", "Demo Database", 2*1024*1024);

ご協力いただきありがとうございます

4

0 に答える 0