Android WebView 多窗口问题(小白笔记)

个人实践所得出的结论

一、知道自己要做那种模式的多窗口

首先自己要知道自己要做什么样的多窗口功能

在我看来有两种:

根据网页中的跳转链接在页面中的显示方式 分为如下两种:

1、网页中的跳转链接还在本Activity页面显示

2、网页中的跳转链接在另一个Activity页面显示 就是在多窗口中 又多了一个Activity 页面

例如腾讯视频 在Via浏览器 和 小米浏览器 中对于跳转链接的处理方式就是不一样的

Via浏览器 : 属于第二种显示模式 直接将跳转页面显示在了 一个新的页面中了。
在这里插入图片描述
小米浏览器: 属于第一种显示方式 跳转链接还在本页面中显示的

在这里插入图片描述

二、两种模式的代码写法

模式一、

若使用模式一 则不要配置

webSetting 中不要设置如下代码:

webSetting.setSupportMultipleWindows(true);
webSetting.setJavaScriptCanOpenWindowsAutomatically(true);

代码部分:onCreateWindow 方法中不要写任何代码

webView.getWebView().setWebChromeClient(new EnhanceWebView.BaseWebChromeClient() {
            //==========多窗口支持==========
            @Override
	public boolean onCreateWindow(WebView view, boolean isDialog, boolean isUserGesture, Message resultMsg) {
				return true;
    }

模式二、

webSetting中配置如下代码:

webSetting.setSupportMultipleWindows(true);
webSetting.setJavaScriptCanOpenWindowsAutomatically(true);

代码后面在写

两种模式的代码不要搞混 否则会出现 Activity页面白屏、点击视频 跳转到新的Activity窗体只显示视频图片等现象


版权声明:本文为qq_35930739原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。