2010-05-23 85 views
12

我正在使用Android模拟器和AVD的Android 2.1,我有以下问题:尝试使用webView加载WebView中的URL。 loadUrl会导致它在浏览器中打开。“你好,WebView”教程在Android浏览器中打开请求的地址,而不是在我的webview中

注意:我说的是在初次开启,其中来自的WebView在浏览器中打开链接,但是,也许是某种联系的问题。

我已经试过几件事情:

  • 我从清单中删除<uses-permission android:name="android.permission.INTERNET" />。这实际上使它正常工作,即将html加载到webview中。然而,正如人们所期望的那样,它唯一加载的是“无法连接互联网”错误页面。
  • 我已经调试过这个项目,以确保在loadUrl的功能,它打开Android浏览器。该目录下载在这一点上是这样:

05-23 22:54:06.858: INFO/ActivityManager(51):启动 活动:意向{ ACT = android.intent.action.VIEW 猫= [android.intent.category.BROWSABLE] DAT = http://m.walla.co.il/ErrorPage.aspx?ReturnUrl=/Default.aspx CMP = com.android.browser/.BrowserActivity }

  • 我试着下载一个真正sample项目(“Hello Android”书籍源文件,项目 - BrowserView)。但是,它的工作原理并不一样。
  • 我创建了一个新项目,并遵循Google的使用WebView的official tutorial的指导,并得到了相同的结果。

我还没有发现有人抱怨这件事。为什么会发生?

感谢, 维塔利

回答

25

您尝试可能访问URL有重定向。重定向行为就像链接点击一样,默认情况下会在浏览器中打开。确保您所访问的URL不会执行重定向(例如,HTTP 301响应),或使用WebViewClientshouldOverrideUrlLoading()来捕获这些URL并将它们重新路由回WebView。

+0

哦。这就说得通了。我会检查。 – VitalyB 2010-05-24 07:33:13

+0

是的,你是对的。谢谢! – VitalyB 2010-05-25 11:15:22

相关问题