开发者

"Hello, WebView" tutorial opens the requested address in Android browser and not in my webview

I am using Android emulator with AVD of Android 2.1 and I have the following problem: Trying to load a URL in a WebView using webView.loadUrl causes it to open in the browser instead.

Note: I am talking about the initial opening, not the issue in which links from the WebView open in a browser, though, perhaps it is somehow connected.

I've tried several things:

  • I've removed <uses-permission android:name="android.permission.INTERNET" /> from the manifest. That actually made it work correctly, i.e, load the html into the webview. However, as one would expect, the only thing it loaded is "unable to connect the internet" error page.
  • I've debugged the project to make sure and indeed at loadUrl function, it opens Android browser. The CatLog at this point is as such:

05-23 22:54:06.858: INFO/ActivityManager(51): Starting activity: Intent { act=android.intent.action.VIEW cat=[android.intent.category.BROWSABLE] dat=http://m.walla.co.il/ErrorPage.aspx?ReturnUrl=/Default.aspx cmp=com.android.browser/.BrowserActivity }

  • I've tried do开发者_运维技巧wnloading a real sample project ("Hello Android" book source files, project - BrowserView). However, it didn't work just the same.
  • I've created a new project and followed the directions at Google's official tutorial of using WebView and got the same result.

I haven't find anyone else complaining about it. Why does it happen?

Thanks, Vitaly


The URL you are trying to visit probably has a redirect. Redirects behave like link clicks and will by default open in the Browser. Make sure the URL you are visiting does not do a redirect (e.g., HTTP 301 response), or use WebViewClient and shouldOverrideUrlLoading() to catch these and re-route them back to the WebView.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜