bridge-protocol

0.2.2 • Public • Published

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!');
  });

Readme

Keywords

none

Package Sidebar

Install

npm i bridge-protocol

Weekly Downloads

1

Version

0.2.2

License

MIT

Last publish

Collaborators

  • qingting
  • long.zhang
  • chowxiang