时间:2021-05-02
本文实例讲述了android使用webview播放flash及判断是否安装flash插件的方法。分享给大家供大家参考。具体实现方法如下:
一、问题:
最近帮一个同学做一个项目,断断续续的一些知识点记录一下。一个页面中有一个webview,用来播放swf,如果系统中未安装flash插件,必须提示用户到market中安装。
二、解决方法:
下面做一个demo,效果图如下:
图1:
图2:
图3:
首先布局文件,很简单:
复制代码 代码如下: <relativelayout xmlns:android="http://schemas.android.com/apk/res/android"
接着activity,得先检测系统中是否已经安装了adobe flash player插件,插件的packagename是com.adobe.flashplayer:
如果未安装,则要做出提醒,为了提供良好的体验,我通过webview加载一个简单的html文件来提醒,html文件放在assets下,如图一所示
这个html文件中有一个链接,点击这个链接则会跳转到market中去下载,这就涉及到了在javascript中调用java本地方法,下面说如何调用,看上面链接的onclick中,它调用window.android对象的gomarket()方法,普通浏览器打开这个页面的,window.android是未定义的,则我们就需要在java中构建这么一个对象,webview有一个
方法,第一个参数就是我们需要构建的绑定到javascript的那个对象,第二个参数就是在javascript中调用的名字,这儿就是android。
我们所构建的对象如下:
javascript如果调用gomarket()方法,则进入的是专用于浏览器的特殊线程,如果涉及的ui更新,则要通过handler来操作。这样点击链接后会调用你手机中的market软件,如图二。安装之后就能播放flash了。有一个a.swf在assets下,如图三所示。
string url="file:///android_asset/a.swf";
mwebview.loadurl(url);
当然一开始要对webview进行一些设置:
websettings setting=mwebview.getsettings();
setting.setpluginstate(pluginstate.on);
setting.setjavascriptenabled(true);
android4.0以上还得开启硬件加速,在manifest文件中,这个activity标签下加上如下属性:
demo完整实例代码点击此处本站下载。
webview播放flash,兼容问题还不少,我不太推荐使用。
希望本文所述对大家的android程序设计有所帮助。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
本文实例讲述了Android编程使用WebView实现与Javascript交互的方法。分享给大家供大家参考,具体如下:Android中可以使用WebView加
本文实例讲述了Android编程实现WebView全屏播放的方法。分享给大家供大家参考,具体如下:最近因为项目要用webview加载html5的视频,开始不能全
在安卓webview下html5的video设置autoplay属性或在documentready中使用play方法都不能使它自动播放只能用webview的on
Android的WebView做不到ios的WebView那样可以很方便的直接预览pdf文件。要实现利用WebView预览pdf我们可以使用谷歌文档服务:mWe
Android解决WebView无法上传文件的问题Android原生的WebView并不支持上传文件,需要我们自己实现相应的方法。于是我把工作中的相关代码记录下