个人由于工作需要,最近查找了许多webview视屏播放相关全屏的问题,发现现在原生webview只支持html5 video标签的全屏实现,如果是如腾讯视频这种不是video的时候,原生的webview就无法实现全屏了,很很坑爹,只能用第三webview内核如腾讯x5内核,uc的等等;
也可能是个人技术不行,无法找到一些黑科技来实现吧,不能自己去实现类似第三浏览器自带的内核,而公司项目又是自己搭建了个webview的注入框架,如果更换webview的风险很大暂时没有找到解决方案,在此记录下问题。
如果不是video标签,WebChromeClient重写的onShowCustomView()将不会执行;
@Override public void onShowCustomView(View view, CustomViewCallback callback) { if (myCallback != null) { myCallback.onCustomViewHidden(); myCallback = null; return; } ViewGroup parent = (ViewGroup) webView.getParent(); parent.removeView(webView); parent.addView(view); myView = view; myCallback = callback; }