DaLei 2019-06-27
利用weex-android
的扩展模块module
做的一个播放背景音乐的小功能
项目需要一个播放背景音乐的功能,网上找了很多都没有一个详细的流程。这里就自己写了一个,仅供参考
首先创建WXEventModule.java
文件,然后在WXApplication.java
中注册该模块
具体的创建可以参考 官方文档
public class WXApplication extends Application { @Override public void onCreate() { super.onCreate(); WXSDKEngine.addCustomOptions("appName", "WXSample"); WXSDKEngine.addCustomOptions("appGroup", "WXApp"); WXSDKEngine.initialize(this, new InitConfig.Builder().setImgAdapter(new ImageAdapter()).build() ); try { //注册扩展模块 WXSDKEngine.registerModule("event", WXEventModule.class); } catch (WXException e) { e.printStackTrace(); } AppConfig.init(this); WeexPluginContainer.loadAll(this); } }
然后在WXEventModule
中增加播放背景音乐的方法
/** * 播放beijing 音乐 * @param */ @JSMethod(uiThread = false) public void runBGSound(String type) { mediaName = type; //创建一个用于播放背景音乐的线程 thread=new Thread(new Runnable(){ @Override public void run() { playBGSound();//播放背景音乐 } }); thread.start();//开启线程 } private void playBGSound() { if(mp!=null){ mp.release();//释放资源 } Context context = mWXSDKInstance.getContext(); if(mediaName.equals("success")) { //R为android的资源目录 res mp= MediaPlayer.create(context, R.raw.success); } else if (mediaName.equals("error")) { mp= MediaPlayer.create(context, R.raw.error); } mp.start(); }
在vue中使用该模板
引入扩展模块 const eventModule = weex.requireModule('event')
播放背景音乐 eventModule.runBGSound('success')
一个客户要求给网站添加一个背景音乐,我用的是html5添加网页背景音乐的代码,在此记录一下以后有用。html5方法二:<videocontrols=""autoplay=""name="media&q