安卓WebView因代理而无法访问互联网问题?

6

我的问题是:

模拟器(Android 2.2)可以通过浏览器访问互联网。 (我在代理后设置了代理)

但当我创建一个Webview应用程序时,似乎无法通过Webview访问互联网。

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

已经设置好了。所以我怀疑是代理的问题。

有什么线索吗?谢谢。

2个回答

9
尝试在OnCreate()中添加以下内容:
WebView.enablePlatformNotifications();

在清单文件中添加以下权限。
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"></uses-permission>

这将使您的Webview能够访问所需的代理信息。您可能需要重新启动模拟器(希望不需要)。

是的!它可以工作,并且还需要添加<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"></uses-permission>,非常感谢。 - user822211
是的!是的!是的!它起作用了。你怎么找出这样的事情的,真的吗?我的应用程序在使用webview时为特定服务提供商提供URL未找到错误代码=-2。你的更改修复了它!!谢谢!! - vivek.m
2
该方法已被弃用。 过时 - 平台通知始终处于启用状态。启用数据状态和代理更改的平台通知。 - Muhammad Mubashir

1
对我而言,除非我为我的Android模拟器指定DNS服务器,否则我的应用程序无法访问WebViews。以下是我在Eclipse中解决问题的方法:
  • Eclipse > 首选项 > Android > 启动:
  • 默认仿真器选项:
  • dns-server 8.8.8.8

您还必须为已创建的任何Android运行配置添加“-dns-server 8.8.8.8”。

  • 运行 > 运行配置 > 选择Android项目 > 目标选项卡 > 其他仿真器命令行选项:
  • 在此处添加“-dns-server 8.8.8.8”。

不确定这是否能解决您的问题,但希望有所帮助。


我根据Justin的解决方案找到了答案,不过还是谢谢你。 - user822211

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接