globalEvent
用于监听持久性事件,例如定位信息,陀螺仪等的变化。全局事件是需要额外 APIs 处理的次要 API。
WeexSDK 对获取应用前后台事件做了支持,开发者可以在页面内监听对应的事件,获取应用当前是前台或后台,以方便暂停音乐,视频等,只需要指定需要监听的事件名称和回调函数就可以,例如:
var globalEvent = weex.requireModule('globalEvent'); globalEvent.addEventListener('WXApplicationDidBecomeActiveEvent', function(e) { console.log('WXApplicationDidBecomeActiveEvent'); });
::: warning 注意 目前只有 platform 为 iOS 和 Android 才能支持。获取当前 platform :::
Android
Map<String,Object> params=new HashMap<>(); params.put("key","value"); mWXSDKInstance.fireGlobalEventCallback("geolocation", params);
iOS
[weexInstance fireGlobalEvent:@"geolocation" params:@{@"key":@"value"}];
注册对一个全局事件的监听。
var globalEvent = weex.requireModule('globalEvent'); globalEvent.addEventListener("geolocation", function (e) { console.log("get geolocation") });
取消对一个全局事件的监听。
var globalEvent = weex.requireModule('globalEvent'); globalEvent.removeEventListener("geolocation");