1

Below is my code for WebViewClient. I have invoked the class by clicking a button.

public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        //this.getWindow().requestFeature(Window.FEATURE_PROGRESS);
        setContentView(R.layout.webview);

        webView = (WebView) findViewById(R.id.webView1);
        webView.getSettings().setJavaScriptEnabled(true);
        webView.setWebChromeClient(new WebChromeClient() {
            public void onProgressChanged(WebView view, int progress) {
                activity.setTitle("Loading...");
                activity.setProgress(progress * 100);

                if (progress == 100)
                    activity.setTitle(R.string.app_name);
            }
        });

        webView.setWebViewClient(new WebViewClient() {
            @Override
            public void onReceivedError(WebView view, int errorCode,
                    String description, String failingUrl) {
                // Handle the error
            }

            @Override
            public boolean shouldOverrideUrlLoading(WebView view, String url) {
                view.loadUrl(url);
                return true;
            }
        });

        webView.loadUrl("http://mylink.com");
        // String customHtml =
        // "<html><body><h1>Hello, WebView</h1></body></html>";
        // webView.loadData(customHtml, "text/html", "UTF-8");

    }

}

Error Image

Its taking more time to load the WebViewClient. I need to speed it up. Any suggestions

4

2 に答える 2

1

私が見る限り、あなたのコードには何の問題もありません。接続しているWebサーバーのパフォーマンスを確認することを強くお勧めします。これが、問題の原因である可能性が最も高いためです。特にサーバーの応答時間を見てください。Webビューのパフォーマンスをテストするには、URLをgoogle.comなどの応答の速いWebサイトに設定してみてください。

于 2012-05-14T08:40:13.120 に答える
1

WebViewは、アプリの一時ディレクトリにさまざまな理由(Webキャッシュなど)でデータベースを作成すると思います。このDBは、アプリからWebViewを初めて呼び出すときに作成されます。以降の呼び出しでは、再利用されます。

したがって、この作成プロセスがあなたが経験しているものである可能性があります。

于 2013-03-18T12:44:08.853 に答える