当前位置: 首页 > news >正文

网站开发绩效指标沧州网站seo

网站开发绩效指标,沧州网站seo,网站建设 中企动力 石家庄,定制微信怎么做去年双十一有个直播的需求,听起来很简单,技术也都很成熟,但是真的开始实现后,还是有不少坑的,首先第一个uc内核不支持webRTC协议,需要重新开发chrome内核的webview,其次webview全屏处理、悬浮窗…

去年双十一有个直播的需求,听起来很简单,技术也都很成熟,但是真的开始实现后,还是有不少坑的,首先第一个uc内核不支持webRTC协议,需要重新开发chrome内核的webview,其次webview全屏处理、悬浮窗恢复同步、输入框被被输入法遮盖等问题,都是坑,小子挨个踩过,查阅很多前辈资料,把能够即插即用的部分整理出来,以资来者。

原理

H5在调用系统全屏和恢复接口时,会触发WebChromeClientonShowCustomView(View, CustomViewCallback)onHideCustomView()接口,所以只要在两个方法中分别实现横竖屏切换和全屏展示和隐藏即可。

其中需要注意的:
1、在onShowCustomView()中有个入参CustomViewCallback,这回调需要在全屏恢复时调用,以告知H5解决全屏展示。

2、布局中增加一个充满屏幕的控件,用以承载全屏的展示。

源码注释
/*** Notify the host application that the current page has entered full screen mode. After this* call, web content will no longer be rendered in the WebView, but will instead be rendered* in {@code view}. The host application should add this View to a Window which is configured* with {@link android.view.WindowManager.LayoutParams#FLAG_FULLSCREEN} flag in order to* actually display this web content full screen.** <p>The application may explicitly exit fullscreen mode by invoking {@code callback} (ex. when* the user presses the back button). However, this is generally not necessary as the web page* will often show its own UI to close out of fullscreen. Regardless of how the WebView exits* fullscreen mode, WebView will invoke {@link #onHideCustomView()}, signaling for the* application to remove the custom View.** <p>If this method is not overridden, WebView will report to the web page it does not support* fullscreen mode and will not honor the web page's request to run in fullscreen mode.** <p class="note"><b>Note:</b> if overriding this method, the application must also override* {@link #onHideCustomView()}.** @param view is the View object to be shown.* @param callback invoke this callback to request the page to exit* full screen mode.*/
public void onShowCustomView(View view, CustomViewCallback callback) {};

Google源码的注释写的确实清楚,这个方法就是做了一件事儿: 更改渲染对象,新对象通过view传给原生。

但在调用时,需要注意:

  1. 宿主APP要配置全屏属性
  2. 在关闭全屏时,记得调用#onHideCustomView#onCustomViewHidden()

实现

布局
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"android:layout_width="match_parent"android:layout_height="match_parent"><WebViewandroid:id="@+id/float_webview"android:layout_width="match_parent"android:layout_height="match_parent" /><FrameLayoutandroid:id="@+id/float_frameLayout"android:layout_width="match_parent"android:layout_height="match_parent"></FrameLayout>
</LinearLayout>
Java实现
private void setWebView(){mWebChromeClient = new WebChromeClient() {@Overridepublic void onShowCustomView(View view, CustomViewCallback callback) {super.onShowCustomView(view, callback);if (mCustomView != null) {callback.onCustomViewHidden(); // 通知H5全屏关闭return;}mCustomView = view; // 缓存全屏视图mFrameLayout.addView(mCustomView); // 向全屏控件添加全屏视图mCustomViewCallback = callback;mWebview.setVisibility(View.GONE); // 将已有webview控件隐藏setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE); // 切换横屏}@Overridepublic void onHideCustomView() {webview.setVisibility(View.VISIBLE);if (mCustomView == null) {return;}mCustomView.setVisibility(View.GONE);mFrameLayout.removeView(mCustomView);mCustomViewCallback.onCustomViewHidden(); // 通知H5全屏关闭mCustomView = null;setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT); // 切换竖屏super.onHideCustomView();}};mWebview.setWebChromeClient(mWebChromeClient);
}

参考

Android WebView 全屏播放视频

http://www.shuangfujiaoyu.com/news/50679.html

相关文章:

  • 顺德品牌网站建设信息免费游戏推广平台
  • dreamweaver 做网站沧州网站优化公司
  • 政府网站开发文档常德网站seo
  • 专业做装修的网站农产品网络营销策划书
  • mysql做网站文件关键词搜索工具
  • wap网站如何做专业网站推广优化
  • 想做棋牌网站怎么做推广普通话手抄报模板
  • 杭州租车网站建设百度seo视频教程
  • 上海要做网站网站搜索排名优化价格
  • 网站pv访问量统计怎么做谷歌关键词排名优化
  • 医院电子网站建设重庆网站seo费用
  • 网站制作论文总结网站查询工具seo
  • 做字体特效的网站网站开发从入门到实战
  • 网络创始人 网站建设广告网址
  • 时代强个人网站营销型网站的特点
  • 开发游戏赚钱吗合肥seo优化外包公司
  • 自己做网站服务器专业网站推广软件
  • 江阴外贸网站建设公司深圳seo优化公司
  • 建设银行官方网站办理银行卡seo排名优化软件价格
  • 网站的项目建设周期2023年国家免费技能培训
  • 企业管理网站开发论文网络营销有哪些推广方式
  • 山西省政府网站建设的公司如何让自己的网站被百度收录
  • 如何创建自己的公司网站小程序模板
  • 营销型网站建设方案演讲ppt企业危机公关
  • 编辑网站在线注册系统google官方下载安装
  • 大兴黄村网站建设公司谷歌 chrome 浏览器
  • 永定门网站建设seo排名优化的网站
  • 可以做公司宣传的网站有哪些手机助手
  • 中国纪检监察报总编湖南网站seo推广
  • 项城做网站灯塔网站seo