HDSwfPlayer


谷歌中国API链接:https://developer.android.google.cn

支持swf播放以及html带swf的播放。

支持swf与js的交互。

自动写入flash信任路径。

提供播放回调。

Android版本不要超过4.3。

目录

  • 如何导入到项目
  • 如何使用
  • 关于我
  • License

如何导入到项目

支持jcenter方式导入。

支持本地Module方式导入。

jcenter方式导入

  • 在需要用到这个库的module中的build.gradle中的dependencies中加入
dependencies {compile 'com.yhd.hdswfplayer:hdswfplayer:1.0.0'
}

Module方式导入

  • 下载整个工程,将hdmediaplayer拷贝到工程根目录,settings.gradle中加入
include ':hdswfplayer'
  • 在需要用到这个库的module中的build.gradle中的dependencies中加入
dependencies {compile project(':hdswfplayer')
}

如何使用

本类支持播放.swf文件、.html文件(.html可以包裹.swf文件并实现与android的交互)。

在demo中提供.html文件模板实例,如果需要js与android数据交互,请移步demo参考。

HDSwfPlayerHelper

  • 初始化
private void initSwf() {//工程assets目录下swf文件对应的html文件路径,如果直接传入swf文件的路径也可以播放,但是不能与js交互String assetsPath="file:///android_asset/main.html";SwfPlayerHelper.getInstance(getApplicationContext()).setJSCallClassName("jsCallClassName")//设置js调用的类名.setJSCallMethodName("jsCallMethodName")//设置js调用的方法名.setWebView(webView)//设置flash播放的载体.setSwfPlayerCallBack(new SwfPlayerHelper.SwfPlayerCallBack() {//设置播放过程的回调@Overridepublic void onCallBack(SwfPlayerHelper.CallBackState state, final Object... args) {Log.v(TAG, state.toString());//收到js调用方法发来的参数字符串信息if(state== SwfPlayerHelper.CallBackState.JS_CALL_ANDROID_METHOD_WITH_PARAM){runOnUiThread(new Runnable() {@Overridepublic void run() {Toast.makeText(getApplicationContext(),(String)args[0],Toast.LENGTH_LONG).show();}});}}}).playSwf(assetsPath);//传入绝对路径、带file://的绝对路径、url都行
}
  • 为了让退出播放或者在播放时用户转到其它页面后flash不再播放,应该重写用于播放的Activity的onPause和onResume方法,并分别调用webview的隐藏方法”onPause”和”onResume
@Override
protected void onResume() {super.onResume();SwfPlayerHelper.getInstance(getApplicationContext()).onResume();
}@Override
protected void onPause() {super.onPause();SwfPlayerHelper.getInstance(getApplicationContext()).onPause();
}
  • 更多的操作
//WebView调用js的基本格式为:webView.loadUrl(“javascript:methodName(parameterValues)”)
SwfPlayerHelper.getInstance(getApplicationContext()).androidCallJsMethod("jsMethodString");
SwfPlayerHelper.getInstance(getApplicationContext()).androidCallJSMethodWithReturn("jsMethodString");

关于我

欢迎 Star Fork
交流地址:尹海德(123302687@qq.com)

License

Copyright 2017 yinhaideLicensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License athttp://www.apache.org/licenses/LICENSE-2.0Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

Github传送门https://github.com/yinhaide/HDSwfPlayer

Android使用Webview播放Swf文件,实现与Flash数据交互相关推荐

  1. android swf webview,android webview播放swf文件

    今天做了一个通过webview播放flash的文件,以前一直以为可以使用videoview视频播放播放flash的东西,今天才发现不行,好像现在除了自己做一个flash播放器,就是用webview去加 ...

  2. android swf webview,android webview播放swf文件

    今天做了一个通过webview播放flash的文件,以前一直以为可以使用videoview视频播放播放flash的东西,今天才发现不行,好像现在除了自己做一个flash播放器,就是用webview去加 ...

  3. WebView播放Swf文件

    这个是在给儿子写播放器时用到的一些代码,基本上都是网上找的,现在也找不到出处了.在这很感谢这些热心网友的分享. 我在这记一下步骤,省得以后用时又不记得了. Swf文件要先在Abode官网中安装好播放插 ...

  4. android 5.0播放swf flash源码Demo

    android 5.0播放swf flash源码Demo 安卓5.0flash播放源码 android flash 播放器 swf 由于之前webview方法播放flash在新的系统中不可用.所以so ...

  5. MIUI(Android)使用Webview上传文件

    由于业务需求,需要在Android APP的Webview中上传图片,默认点击网页上的input file没有反应,在网上搜索后发现了一个可用的版本: android使用WebView来打开文件选择器 ...

  6. 怎样播放swf文件 swf格式怎么转换成mp3格式

    话说swf文件真是个让人头疼的格式.小编最新为了锻炼自己的听力,就在网上下载了很多学习的课程,但是下载的课程是swf格式文件,而我又只需要音频,所以格式的转换就成了最大的问题.可能有不少网友有着和我一 ...

  7. linux swf文件打开_如何在Linux上播放.swf文件?

    linux swf文件打开 How to play the flash (.swf) files downloaded from the Web on Linux? 如何在Linux上播放从Web下载 ...

  8. asp.net中播放.swf文件的路径问题

    在前台代码 <OBJECT id="OBJECT1" codeBase="http://download.macromedia.com/pub/shockwave/ ...

  9. Gnash 播放swf文件

    今天用Gnash 播放swf文件,发现不能暂停,就在网上搜了一下,发现有一些快捷键用,给大家分享下. 原文地址:http://hi.baidu.com/lwf808/item/bd2cbc5c7b02 ...

最新文章

  1. to_string()函数----将int类型转换为string型
  2. Draft-微软出品的云原生下的本地开发辅助工具
  3. 属性名、变量名与 内部关键字 重名 加
  4. 【Qt开发】QSplitter的使用和设置
  5. 硬件基础:理解串口通信以及232,485,422常见问题
  6. shell test
  7. 计算机桌面不来回变黑,电脑屏幕变小了左右黑几种解决方法
  8. 关系型数据库中主键(primary key)和外键(foreign key)的概念。
  9. 添加谷歌账户显示与服务器,解决添加google同步帐户出错竟然可以这般简单!
  10. VS Code 安装 VSIX 插件
  11. erdas几何校正_实验一 ERDAS介绍与图像几何校正
  12. oracle保留小数位数
  13. ABAP 去重 delete adjacent duplicates
  14. 弱占优策略--Weakly Dominant Strategy
  15. WINVNC(二)omni_thread
  16. 同样是手写笔,Apple Pencil到底输在了哪里?
  17. 【开发教程14】AI语音人脸识别(会议记录仪/人脸打卡机)-AI人脸系统架构
  18. 2022 中国开发者影响力盛典暨 CSDN 企业生态汇在京举行
  19. 学习 Python 编程的 11 个受用终身的技巧
  20. Git分支及其协同开发

热门文章

  1. java 设置pdf页面大小_java – 使用pdfbox从单独的pdf(不同的页面大小)添加页面作为图层...
  2. 电视台搞的知识竞赛原来都用了这些软件硬件设备
  3. DIY基于android的带GPS的相机遥控器
  4. 【懒羊羊选导师】爬虫+图像拼接
  5. 贝壳采集器:途牛旅游网 信息采集
  6. 首版次软件产品认证/山东省首版次高端软件申报通知
  7. 水下仿生机器人:红外动捕系统用于机器海豚开发
  8. 学习大数据有哪些就业方向?
  9. 中国电子信息产业发展研究院袁晓庆:企业应采用区块链等新技术促进工业APP互联互通(GBCAX)
  10. 【Unity Shader】2D模型 3D模型混用的穿模问题(Spine在3D场景中出现前后穿模问题的解决办法)