webview

android webview加载h5 video 全屏按钮禁用的解决方案

风格不统一 提交于 2020-03-07 11:22:32
~~在APP开发的过程中,会碰到需要在WebView中播放视频的需求,下面讲解一下如何在WebView中使用html5播放视频。 1.让视频在各个Android版本能够正常播放 在AndroidManifest.xml中声明HardwareAccelerate的标志,一般是添加在Activity的级别上。代码如下: <activity ... android:hardwareAccelerated="true" > 下面引申一下HardwareAccelerate声明的方式: (a).如果需要声明整个应用都要加速,则在Application级别下面进行声明: < application … android:hardwareAccelerated =“true”> (b).如果需要某个Activity加速,则可以进行下面的声明: <activity ... android:hardwareAccelerated="true" > 或者在代码里面进行动态的声明: getWindow.setFlags(WindowManager.LayoutParams.FLAG_HARDWARE_ACCELERATED, WindowManager.LayoutParams.FLAG_HARDWARE_ACCELERATED); ©

应对iOS政策,白鹭引擎助力数十家团队过审 AppStore 经验分享

安稳与你 提交于 2020-03-07 00:14:42
2019年苹果更新了对HTML5游戏的政策,要求HTML5游戏应在 Safari浏览器中展现,而不是直接打包为 ipa 发布到 AppStore 中,对此,很多 开发者给予关注,并跟我们咨询寻求帮助,解决他们在白鹭引擎开发的HTML5游戏发布到AppStore的问题。 在我们白鹭完整的开发工作流产品中,使用Egret Native就可以解决就可以解决这个问题。 在最近几个月的时间中,我们引擎团队帮助数十家开发商成功将其产品顺利通过 AppStore 新规审核,总结了一些实操经验,今天跟大家分享下, 希望可以帮助更多的开发者朋友过审AppStore。 一定不要使用 WKWebView 直接打包 这是苹果现在重点打击的目标,请开发者一定要采用 Egret Native 提供的打包方式进行打包,而不是使用 WKWebView。具体原因是,WKWebView发布的游戏是一个运行在HTML5环境下的游戏,不符合最新的开发者规范中的4.7项。而 Egret Native 与WKWebView不同,底层运行的是一套纯原生的、并且针对白鹭引擎进行了大量定制性能优化的渲染引擎,完全符合苹果的开发者规范。 此外,我们强烈建议您开启 EgretNative的NativeRenderer 模式,采用这种模式不仅可以大幅提升您的游戏性能,而且经过实际验证,可以进一步提升AppStore的过审概率。

Playing SWF files locally from Android Webview

馋奶兔 提交于 2020-03-06 03:52:05
问题 What is the right way to view .Swf files that plays .Flv videos in Android? The code that I am using right now to enable Flash support in web view is WebView mWebView = (WebView) findViewById(R.id.webview); mWebView.getSettings().setJavaScriptEnabled(true); mWebView.getSettings().setAllowFileAccess(true); mWebView.getSettings().setPluginsEnabled(true); mWebView.getSettings().setSupportZoom(false); mWebView.getSettings().setAppCacheEnabled(false); mWebView.getSettings().setAllowContentAccess

html5+mui app

十年热恋 提交于 2020-03-05 19:17:53
html+mui 本文仅用于个人学习,感谢批评指正 webview Webview模块管理应用窗口界面,实现多窗口的逻辑控制管理操作。通过plus.webview可获取应用界面管理对象。 属性: isRecovery: 当前Webview窗口是否由于内核崩溃自动恢复 方法: all :获取所有Webview窗口 close :关闭Webview窗口 create :创建新的Webview窗口 currentWebview :获取当前窗口的WebviewObject对象 getDisplayWebview : 获取屏幕所有可视的Webview窗口 getWebviewById :查找指定标识的WebviewObject窗口 getLaunchWebview :获取应用首页WebviewObject窗口对象 getSecondWebview :获取第二个首页WebviewObject窗口对象 getTopWebview :获取应用栈顶的WebviewObject窗口对象 hide :隐藏Webview窗口 open :创建并打开Web窗口 postMessageTouniNView :向uniNView窗口发送消息 prefetchURLS :预载网络页面 prefetchURLS :预载多个网络页面 show :显示Webview窗口 startAnimation

应对iOS政策,白鹭引擎助力数十家团队过审 AppStore 经验分享

折月煮酒 提交于 2020-03-03 16:47:11
2019年苹果更新了对HTML5游戏的政策,要求HTML5游戏应在 Safari浏览器中展现,而不是直接打包为 ipa 发布到 AppStore 中,对此,很多 开发者给予关注,并跟我们咨询寻求帮助,解决他们在白鹭引擎开发的HTML5游戏发布到AppStore的问题。 在我们白鹭完整的开发工作流产品中,使用Egret Native就可以解决就可以解决这个问题。 在最近几个月的时间中,我们引擎团队帮助数十家开发商成功将其产品顺利通过 AppStore 新规审核,总结了一些实操经验,今天跟大家分享下, 希望可以帮助更多的开发者朋友过审AppStore。 一定不要使用 WKWebView 直接打包 这是苹果现在重点打击的目标,请开发者一定要采用 Egret Native 提供的打包方式进行打包,而不是使用 WKWebView。具体原因是,WKWebView发布的游戏是一个运行在HTML5环境下的游戏,不符合最新的开发者规范中的4.7项。而 Egret Native 与WKWebView不同,底层运行的是一套纯原生的、并且针对白鹭引擎进行了大量定制性能优化的渲染引擎,完全符合苹果的开发者规范。 此外,我们强烈建议您开启 EgretNative的NativeRenderer 模式,采用这种模式不仅可以大幅提升您的游戏性能,而且经过实际验证,可以进一步提升AppStore的过审概率。

Android混合开发之H5调用系统相机和相册

孤者浪人 提交于 2020-03-03 14:54:42
曾经接触一个项目,需要利用H5显示页面,于是自然而然想到了WebView。又由于Android系统自带的WebView被人吐槽过多,所以决定使用腾讯封装的X5内核的WebView,使用和方法上和系统的相差不大。 第一步:在布局中使用WebView。 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="match_parent" android:layout_height="match_parent"> <ProgressBar android:id="@+id/progressBar1" style="?android:attr/progressBarStyleHorizontal" android:layout_width="match_parent" android:layout_height="3dp" /> <com.tencent.smtt.sdk.WebView android:id="@+id/wv" android:layout_width="match_parent" android:layout_height="match_parent" android:text=

Hybrid Mobile App

萝らか妹 提交于 2020-03-03 11:39:30
定义 可以理解为通过 Web 网络技术(如 HTML,CSS 和 JavaScript)与 Native 相结合的混合移动应用程序。H5主要用于界面的编写,比如按钮、单选框以及下拉框等; CSS3用于对界面细节化的修饰,设置不同的样式;JS实现数据交互。Native与HTML相比,性能稳定、交互流畅,可以调用本地硬件和访问本地资源,但是开发和维护成本高,发布周期长。而HTML有着跨平台,开发成本第,更新快等有点。 现在很多app都是由原生页面(native)和webview页面(H5)组成,在自动化测试中需要判断页面是native还是webview。 Hybrid 测试流程 进入的页面具有webview 使用uiautomatorviewer工具或contexts方法进行判断存在webview 使用context方法切换进webview 定位,操作 再次使用context方法返回native webview与native的判断   1、uiautomatorviewer中判断   在UI Automator Viewer中,查看结构,如果节点的class 是android.webkit.WebView 则可判断为 H5页面      2、通过contexts方法判断      driver.contexts # ['NATIVE_APP', 'WEBVIEW_com.tencent

WebViewJavascriptBridge详细使用

旧街凉风 提交于 2020-03-03 02:17:48
WebViewJavascriptBridge详细使用 源网址: https://www.cnblogs.com/jiang-xiao-yan/p/5345755.html 前言 WebViewJavascriptBridge是支持到iOS6之前的版本的,用于支持native的iOS与javascript交互。如果需要支持到iOS6之前的app,使用它是很不错的。本篇讲讲WebViewJavascriptBridge的基本原理及详细讲讲如何去使用,包括iOS端的使用和JS端的使用。 经过多番百度、Google,发现WebViewJavascriptBridge的资源讲解不是翻译官方文档就是直接说官方提供的demo。但是笔者在写这个demo时也遇到了不少问题,也想看看大家是怎么使用的,特别是JS端,弄了好久都没有回调,原来是因为log。 写下本篇文章,希望大家少走弯路吧! 本Demo效果图 iOS与H5交互的方案 纵观所有iOS与H5交互的方案,有以下几种: 第一种:有很多的app直接使用在webview的代理中通过拦截的方式与native进行交互,通常是通过拦截url scheme判断是否是我们需要拦截处理的url及其所对应的要处理的功能是什么。任意版本都支持。 第二种:iOS7之后出了JavaScriptCore.framework用于与JS交互,但是不支持iOS6

webView的使用(很多坑)

大憨熊 提交于 2020-03-02 19:53:39
测试环境:Android Studio & Android 9 API 28 完成功能:MainActivity跳转至WebViewActivity,显示目标静态HTML 具体步骤: 新建一个 模块/工程 主活动布局 activity_main.xml 添加按钮布局: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical"> <Button android:id="@+id/btn" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="跳转webView"/> </LinearLayout> 修改 MainActivity : package com.example.webviewtest; //包名自行更改 import android.content.Intent; import

X5内核视频之问答汇总

做~自己de王妃 提交于 2020-03-02 16:57:27
X5内核视频四种播放形态 (1) 全屏播放 X5内核视频默认播放形态,用户点击视频区域后开始进入全屏播放,视频区域内的所有事件行为会由X5内核视频组件全权托管。视频层级最高,会遮挡所在区域所有html元素。(仅使用于安卓微信、手机QQ等非安卓QQ浏览器的X5内核场景) https://yongling8808.github.io/test/video_demo/video.html (2) 页面内播放 X5内核视频在用户点击后默认会进入全屏播放,前端可以设置video的x5-playsinline属性来将视频限定于网页内部播放 https://yongling8808.github.io/test/video/video_inpage_playsinline.html (3) 同层页面内播放 同层页面内播放是标准的视频播放形态,在video标签中添加x5-video-player-type:h5-page属性来控制网页内部同层播放,可以在视频上方显示html元素。 https://tencentx5.github.io/x5/video_page_samelayer.htm X5内核视频事件 (1) 进入、退出全屏通知 可以通过**x5videoenterfullscreen、x5videoexitfullscreen来**视频进入和退出全屏通知。 https:/