有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java网页不可用,WebView Android

WebView WebDimrah;
WebSettings WebSettingDimrah;


@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);


    WebDimrah  = (WebView)findViewById(R.id.WebView1);
    WebSettingDimrah  = WebDimrah.getSettings() ;

    WebDimrah.setWebViewClient(new WebViewClient());
    WebDimrah.getSettings().setJavaScriptEnabled(true);
    WebDimrah.loadUrl("https://facebook.com");

你好,我有个问题,我有一个家庭作业要用安卓 studio制作网页视图,我输入url facebook,然后运行它,但就是这样

enter image description here

我对我的清单有权限,但在我的avd网页中仍然不可用

日志:

11-17 19:16:06.535 5829-5829/com.dimrahwebkit E/dalvikvm: Could not find class '安卓x.core.view.ViewCompat$OnUnhandledKeyEventListenerWrapper', referenced from method 安卓x.core.view.ViewCompat.addOnUnhandledKeyEventListener
11-17 19:16:06.535 5829-5829/com.dimrahwebkit E/dalvikvm: Could not find class '安卓.view.WindowInsets', referenced from method 安卓x.core.view.ViewCompat.dispatchApplyWindowInsets
11-17 19:16:06.545 5829-5829/com.dimrahwebkit E/dalvikvm: Could not find class '安卓.view.WindowInsets', referenced from method 安卓x.core.view.ViewCompat.onApplyWindowInsets
11-17 19:16:06.545 5829-5829/com.dimrahwebkit E/dalvikvm: Could not find class '安卓.view.View$OnUnhandledKeyEventListener', referenced from method 安卓x.core.view.ViewCompat.removeOnUnhandledKeyEventListener
11-17 19:16:06.545 5829-5829/com.dimrahwebkit E/dalvikvm: Could not find class '安卓x.core.view.ViewCompat$1', referenced from method 安卓x.core.view.ViewCompat.setOnApplyWindowInsetsListener
11-17 19:16:06.585 5829-5829/com.dimrahwebkit E/dalvikvm: Could not find class '安卓.graphics.drawable.RippleDrawable', referenced from method 安卓x.appcompat.widget.AppCompatImageHelper.hasOverlappingRendering
11-17 19:16:06.975 5829-5829/com.dimrahwebkit E/eglCodecCommon: glUtilsParamSize: unknow param 0x000082da
11-17 19:16:06.975 5829-5829/com.dimrahwebkit E/eglCodecCommon: glUtilsParamSize: unknow param 0x00008cdf
11-17 19:16:06.975 5829-5829/com.dimrahwebkit E/eglCodecCommon: glUtilsParamSize: unknow param 0x00008824
11-17 19:16:07.255 5829-5829/com.dimrahwebkit E/eglCodecCommon: glUtilsParamSize: unknow param 0x000082da
11-17 19:16:07.255 5829-5829/com.dimrahwebkit E/eglCodecCommon: glUtilsParamSize: unknow param 0x00008cdf
11-17 19:16:07.255 5829-5829/com.dimrahwebkit E/eglCodecCommon: glUtilsParamSize: unknow param 0x00008824
11-17 19:16:07.255 5829-5829/com.dimrahwebkit E/EGL_emulation: tid 5829: eglSurfaceAttrib(1199): error 0x3009 (EGL_BAD_MATCH)```


共 (1) 个答案

  1. # 1 楼答案

    您需要使用overrideonReceivedSslError()方法来显示网页。以下是您的代码的外观:

    private WebView WebDimrah;
    private WebSettings WebSettingDimrah;
    
    @SuppressLint("SetJavaScriptEnabled")
    @RequiresApi(api = Build.VERSION_CODES.KITKAT)
    @Override
    protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    
    
    WebDimrah  = (WebView)findViewById(R.id.WebView1);
    WebSettingDimrah  = WebDimrah.getSettings() ;
    WebDimrah.getSettings().setJavaScriptEnabled(true);
    
    WebDimrah.setWebViewClient(new WebViewClient() {
    @Override
    public void onReceivedSslError(WebView view, SslErrorHandler handler, SslError error) {
    
    handler.proceed();
    
          }
       });
     WebDimrah.loadUrl("https://facebook.com");
    
    } 
    

    另外,在Android.xml文件(清单)中添加以下行: android:usesCleartextTraffic="true"在。。。标签