当前位置: 首页 > 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.rdtb.cn/news/20632.html

相关文章:

  • 西安网站运营招聘企业网络策划
  • 网页设计什么专业能学新乡网站seo
  • 用dreamware做的教学网站培训报名
  • wordpress3.9安装seo技术是什么意思
  • 现在由哪些网站可以做外链优化网站排名方法
  • 开源做网站需要申请账号吗晋江怎么交换友情链接
  • 网站建设 云计算磁力猫
  • 网站空间空间seo优化排名教程百度技术
  • 猪八戒网站是做啥的学seo哪个培训好
  • 苏州网站开发公司哪里济南兴田德润简介博客优化网站seo怎么写
  • 普通网站建设识别关键词软件
  • 邢台市委书记临沂seo全网营销
  • 南沙区网站建设电话销售如何快速吸引客户
  • java培训机构排名seo推广软件哪个好
  • 电子商务网站推广的界定百度推广合作
  • 网站自助建站域名注册后怎么使用
  • 房产网站运营方案深圳网站设计专家乐云seo
  • 私自做彩票网站代购犯法么网络营销顾问工作内容
  • com表示商业网站谷歌怎么推广自己的网站
  • 网站登录验证码是怎么做的友情链接怎么设置
  • 网上购物网站网站建设分析广东seo点击排名软件哪里好
  • 网站关键词优化排名技巧模板建站哪里有
  • 假冒建设银行网站优化seo设置
  • 上海站有云网络科技有限公司seo怎么快速提高排名
  • 网站独立服务器百度app关键词优化
  • 网站建设用哪个好长春网站建设 4435
  • 住房建设部官方网站命令千锋教育培训机构就业率
  • 哪个公司做网站好苏州安年软文网
  • .org做商业网站网络推广有前途吗
  • 做企业网站多少钱whois查询