2011-04-05 62 views
2

我正在尝试使用WebView显示网页。我不使用几乎是相同的代码的WebView例如:来自WebView的ERROR_BAD_URL

webview = (WebView)findViewById(R.id.webview); 
webview.getSettings().setJavaScriptEnabled(true); 
webview.loadUrl(url); 

webview.setWebViewClient(new WebViewClient() { 
    public boolean shouldOverrideUrlLoading(WebView view, String url) { 
     view.loadUrl(url); 
     return true; 
    } 
} 

但这始终显示“该页无法打开,因为该网址是无效的。”实现onReceivedError()显示我正在触发ERROR_BAD_URL。

我试过用硬编码的值“http://www.google.com”替换网址,但我得到了同样的错误信息。如果我使用URL调用手机的浏览器,该页面显示正常。

该错误只发生在我测试的其中一个电话上(运行2.1的Droid Eris)。在模拟器上运行没有问题(我试过1.5和2.1)或在另一部手机上运行。

手机上是否存在可能导致此问题的某些配置设置?我不知道从哪里开始调试。

回答

3

赋予它ACCESS_NETWORK_STATUS/CHANGE_NETWORK_STATUS权限解决了问题。 (可能只有其中一个实际需要,我没有测试过)

+0

对我没有帮助。 – DisableR 2013-06-09 19:47:51

1

刚刚在文档中发现,您必须在您的Manifest.xml中为您的应用上网权限。

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