bridge-js-sdk

0.2.1 • Public • Published

bridge-js-sdk

JS Bridge SDK for contacting between iOS(using WebViewJavascriptBridge) and Android(using JsBridge) Webviews.

Helps masking the API differences of the native bridge used by iOS and Android.

Native Bridge Support

iOS

https://github.com/marcuswestin/WebViewJavascriptBridge

https://github.com/Lision/WKWebViewJavascriptBridge

Android

https://github.com/lzyzsd/JsBridge

Installation

npm i -S bridge-js-sdk

Usage

init

in src/index.js

 
BridgeService.init({
 
    // `iOS` or `Android` or `browser`
    clientType: 'iOS',
 
    // `WebViewJavascriptBridge` for marcuswestin/WebViewJavascriptBridge 
    // `WKWebViewJavascriptBridge` for Lision/WKWebViewJavascriptBridge
    iOSBridgeType: 'WebViewJavascriptBridge',
 
    responseChecker(response) {
        return response.status === 0;
    },
 
    responseTransformer(response) {
        return response.data;
    },
 
    // help testing in browser
    browserBridge: canMockNative
        ? {
            callHandler(actionName, params, callback, mockData = {
                status: 0,
                data: {}
            }) {
                return callback(mockData);
            }
        }
        : null
});
 

ready

 
BridgeService.init(options).then(function (bridge) {
    // bridge is ready
});
 

invoke

 
const bridge = BridgeService.getInstance();
 
bridge.invoke('requestNative', {
    action: 'notify',
    params: {
        type: 1
    }
}).then(function () {
});
 

Register a handler

 
const bridge = BridgeService.getInstance();
 
bridge.on('onClickTitleBar', function () {});
 

Package Sidebar

Install

npm i bridge-js-sdk

Weekly Downloads

3

Version

0.2.1

License

MIT

Unpacked Size

21.5 kB

Total Files

5

Last publish

Collaborators

  • mescoda