Cordova桥接模式

所谓的桥接模式指的是native和js的通信方法,这些方法起着连接native到js的或者js到native的作用,类似桥梁一样做为数据通行的道路故称桥接。所以桥接分为两种:1. js -> native; 2.native -> js,在cordova/exec模块中可以找到如下代码定义了两种方向各自的桥接方法:

    jsToNativeModes = {
        PROMPT: 0,
        JS_OBJECT: 1
    },
    nativeToJsModes = {
        POLLING: 0,
        LOAD_URL: 1,
        ONLINE_EVENT: 2,
        EVAL_BRIDGE: 3
    },

1.JS -> NATIVE的桥接方式说明

jsToNativeModes = {
    PROMPT: 0,//使用弹出框prompt的方式来向native发送数据
    JS_OBJECT: 1 //使用原生暴露API的方式让js访问原生数据
},

PROMPT方式的实现:

JS_OBJECT方式的实现:

2. NATIVE -> JS的桥接方式说明

nativeToJsModes = {

    POLLING: 0,//轮寻的方式,前端定时器不间断的调用原生暴露API的方式来让js访问原生数据

    LOAD_URL: 1, //native使用webview.loadUrl("javascript:code")方式来执行前端脚本达到通信目的

    ONLINE_EVENT: 2,//native使用webview.setNetworkAvailable(true/false)方法,触发document online/offline 事件,再由前端主动访问原生变量来达到通信目的 

    EVAL_BRIDGE: 3 //native使用webview.loadUrl方式来执行前端脚本达到通信目的
},

results matching ""

    No results matching ""