bridge-protocol
v0.2.2
Published
JavaScript bridge protocol.
Downloads
11
Readme
JSBridge 协议客户端实现
API
安装
<script src="https://jsbridgeprotocol.faas.ele.me/0.0.1.min.js"></script>
引入脚本之后,会在全局声明一个 bridgeProtocol 对象,通过这个对象的 inject 方法可以在全局注册上原来需要在 onload 的时候才注入的变量:
<script>
if (typeof bridgeProtocol !== 'undefined') {
bridgeProtocol.inject('EJsBridge', ['getGlobalGeohash', 'showShareButton', 'selectedHongbao', 'selectHongbao', 'selectCoupon', 'getLocateStatus', 'setTitle', 'closePage', 'getUserID']);
}
</script>
init
用来处理在尚未 ready 之前 Native 发送给 Browser 的消息,只能调用一次:
bridgeProtocol.init()
inject
bridgeProtocol.inject(objectName, methods)
向 window 中添加一个对象,对象名为 objectName,方法名为 methods。
比如,Element App 的 Hybrid API 应该这么处理:
bridgeProtocol.inject('EJsBridge', ['getGlobalGeohash', 'showShareButton', 'selectedHongbao', 'selectHongbao', 'selectCoupon', 'getLocateStatus', 'setTitle', 'closePage', 'getUserID']);
registerHandler
向 Native 注册一个方法,以供 Native 调用:
bridgeProtocol.registerHandler('functionInJs', function(data, callback) {
document.getElementById('show').innerHTML = ('data from Java: = ' + data);
callback('Javascript Says Right back aka!');
});