在Android 4.4设备中未校准WebView.setWebViewClient事件

在Android 4.4设备中未校准WebView.setWebViewClient事件,android,webview,android-webview,android-4.4-kitkat,webviewclient,Android,Webview,Android Webview,Android 4.4 Kitkat,Webviewclient,在android 4.4中,webview已更改,您可以在此处看到: 我正在编译我的应用程序,targetsdkversion和minsdkversion设置为9,因此我的webview将在“怪癖模式”下启动,如下所述: 这种怪癖模式对我的webview有一些问题,因为当我在android版本较低的设备上启动我的应用程序时,它工作得很好,但当我在4.4设备上启动它时,没有调用webview事件、pagestarted事件、pagefinished事件。。。等等,没有一个被称为 我需要调用这些方法

在android 4.4中,webview已更改,您可以在此处看到:

我正在编译我的应用程序,targetsdkversion和minsdkversion设置为9,因此我的webview将在“怪癖模式”下启动,如下所述:

这种怪癖模式对我的webview有一些问题,因为当我在android版本较低的设备上启动我的应用程序时,它工作得很好,但当我在4.4设备上启动它时,没有调用webview事件、pagestarted事件、pagefinished事件。。。等等,没有一个被称为

我需要调用这些方法,因为出于某些原因我需要重写它们。我怎样才能解决它

这是我的代码:

WebView adWebView = new WebView(this.ctx);

            adWebView.setWebViewClient(new WebViewClient() {
                @Override
                public void onPageStarted(WebView view, String url, Bitmap favicon) {
                    // TODO Auto-generated method stub
                    super.onPageStarted(view, url, favicon);
                }

                @Override
                public boolean shouldOverrideUrlLoading(WebView view, String url) {
                    // TODO Auto-generated method stub
                    if(url.length() > 0){
                        if (!url.startsWith("http://") && !url.startsWith("https://")){
                            url = "http://" + url;                      
                        }
                        Intent browserIntent = new Intent(Intent.ACTION_VIEW, Uri.parse(url));
                        SectionManager.getCurrentActivity().startActivity(browserIntent);                                                                   
                    }else{
                        onAdFailed();   
                    }
                    //onAdFailed();
                    return true;
                }

                @Override
                public void onPageFinished(WebView view, String url) {
                    super.onPageFinished(view, url);

                    onAdReceived(view);
                    view.clearCache(true);
                }               

                @Override
                public void onReceivedError(WebView view, int errorCode,
                        String description, String failingUrl) {
                    // TODO Auto-generated method stub
                    onAdFailed();
                }

            });         

            LayoutParams params = new LayoutParams(LayoutParams.MATCH_PARENT,LayoutParams.MATCH_PARENT);
            adWebView.setLayoutParams(params);
            adWebView.getSettings().setJavaScriptEnabled(true);
            adWebView.getSettings().setLoadWithOverviewMode(true);
            adWebView.getSettings().setUseWideViewPort(true);
            adWebView.setBackgroundColor(Color.TRANSPARENT);

            adWebView.loadUrl(url); 

我在KitKat从未遇到过WebViewClient问题。您是否在基于操作系统版本的代码中更改了任何内容?不,没有,但我正在使用targetsdk 9进行编译,这对我来说是必需的,因此webview是在quirks模式下执行的