2014-02-20 87 views
0

我有一个WebView尝试加载这样的网页:的WebView无法加载网页

public void onCreate(Bundle savedInstanceState) 
{ 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_web); 
    wv=(WebView)findViewById(R.id.webview); 
    WebSettings ws=wv.getSettings(); 
    ws.setJavaScriptEnabled(true); 
    wv.loadUrl("http://pro39.blutechnologies.com/crimes.aspx"); 
} 

我已经加入了互联网许可清单

<uses-permission android:name="android.permission.INTERNET"/> 

但是web视图是空白的,它既不会抛出错误,也不会加载网页。我如何加载这样的网页,我只尝试加载本地html文件,我想知道如果我必须做不同的事情。

+0

您是否也能够在浏览器上查看该网址?我知道网址工作正常。 – Kedarnath

+0

是的,我可以在浏览器中查看网址 – vamsiampolu

+0

好的,你是在仿真器还是在真实设备中试用此代码? – Kedarnath

回答

1

尝试像这样:

mWebView.loadUrl("http://pro39.blutechnologies.com/crimes.aspx"); 
mWebView.setWebViewClient(new HelloWebViewClient()); 

    private class HelloWebViewClient extends WebViewClient { 
    @Override 
    public boolean shouldOverrideUrlLoading(WebView view, String url) { 
    view.loadUrl(url); 
    return true; 
} 

使用此代码.shouldOverrideUrlLoading() compulsary.use此代码不能使用,请回复我这个代码工作或不

+0

它的工作原理是将网页重定向到其他地方......或者当我使用网址时,这个网站是否会受到欺骗,我会尽快接受答案。 – vamsiampolu

+0

只是返回false;来自shouldOverrideUrlLoading。如果页面具有带自定义方案的iframe,则调用view.loadUrl将导致问题。 –

+0

@ marcin.kosiba我不知道更多关于iframe。但它在我的情况下工作。 –

0

试试下面的代码。

public class Main extends Activity { 
    private WebView mWebview ; 
    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_web); 

     mWebview = (WebView)findViewById(R.id.webview); 
     mWebview.getSettings().setJavaScriptEnabled(true); // enable javascript 

     final Activity activity = this; 

     mWebview.setWebViewClient(new WebViewClient() { 
      public void onReceivedError(WebView view, int errorCode, String description, String failingUrl) { 
       Toast.makeText(activity, description, Toast.LENGTH_SHORT).show(); 
      } 
     }); 

     mWebview .loadUrl("http://pro39.blutechnologies.com/crimes.aspx"); 
     setContentView(mWebview); 
    } 
}