在 Android 9 (Api 29) 上,我试图加载一个 url,但我收到错误消息“无法加载位于 url 的网页,因为:net::ERR_ACCESS_DENIED”。
我在 AndroidManifest.xml
文件中有 internet 权限
<uses-permission android:name="android.permission.INTERNET" />
从 logcat,我也可以看到以下错误:
E/chromium: [ERROR:socket_posix.cc(94)] CreatePlatformSocket() 失败:不允许操作 (1)
我的代码如下:
WebView webView = findViewById(R.id.webView);
webView.loadUrl("https://andela.com/alc/");
我后来添加了以下代码以获取更多详细信息:
webView.setWebViewClient(new WebViewClient(){
@Override
public void onReceivedError(WebView view, WebResourceRequest request, WebResourceError error) {
super.onReceivedError(view, request, error);
Log.d("TAG", error.getDescription().toString());
// handler.proceed(); This line wont make a different on API 29, Webview still bank
}
});
Webview 在使用运行 API 25 的模拟器时正确加载 url。还在 API 28 上进行了测试并且工作正常。仅不适用于 API 29。
最佳答案
只需卸载应用程序并再次安装即可。100% 有效
关于Android Webview 访问被拒绝,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57041531/