0

アクティビティに次のコードがあります。

    browser = (WebView)findViewById(R.id.webkit);
    browser.getSettings().setJavaScriptEnabled(true);
    browser.getSettings().setPluginsEnabled(true);
    browser.getSettings().setDomStorageEnabled(true);

    /*if (Build.VERSION.SDK_INT >= 16) {
        browser.getSettings().setAllowFileAccessFromFileURLs(true);
        browser.getSettings().setAllowUniversalAccessFromFileURLs(true);
    }*/

    // Loads html-string into webview
    browser.loadUrl("file:///android_asset/index.html");

ページは正常にロードされ、CSS は正常にロードされ、画像はすべて正常にロードされます。ただし、ローカルの js ファイルもあります。現在、警告メッセージのみが含まれていますが、警告は表示alert("JSEnabled");されません。これを診断するにはどうすればよいですか?

私は現在、エミュレーターを使用してプロジェクトを開発しており、Gingerbread (2.3.3) までサポートする必要があります。

ちなみに、エミュレータでブラウザアプリを使用すると、同じhtml/jsが正常に動作します(同じHTML/jsのリモートで提供されたバージョンを指しています)

また、指摘する必要があります-すべてのファイルはプロジェクトのアセットフォルダーにあり、js を file:///android_assets/main.js および main.js として参照しようとしました。リモートのjsファイルを参照してみました。何も機能しません...

4

1 に答える 1

3

JavaScriptアラートを機能させるには、これをWebビューに追加してください

  webview.setWebChromeClient(new WebChromeClient() {

        @Override
        public boolean onJsAlert(WebView view, String url, String message,
                JsResult result) {

            return super.onJsAlert(view, url, message, result);
        }

    });
于 2012-12-10T09:10:27.273 に答える