Cordova.js核心模块介绍
核心模块的源码为必读代码,附录有详细注释
- define("cordova", function(require, exports, module) {.....})
//该模块主要是用来定义事件document的事件添加和触发及保存exec传入的回调函数,
以及提供一个callbackFromNative让原生调用
- define("cordova/android/nativeapiprovider", function(require, exports, module) {......})
//该模块用来选择原生和js的交互方式,是使用prompt方式还是选择原生暴露的API来进行通信
- define("cordova/android/promptbasednativeapi", function(require, exports, module) {...})
//基于prompt方法原生进行通信,通过prompt的提示内容来执行对应操作比如执行插件,设置桥接模式(native到js的通信方式),
检索消息(访问原生内部变量,exec的执行操作结果均丢在原生的变量当中,检索该变量并传给js)
- define("cordova/channel", function(require, exports, module) {...})
//该模块用来定义自定义事件,比如添加resume事件(应用重新从后台会到主线)
//step1: 创建一个channel 见cordova/init模块
channel.onResume = cordova.addDocumentEventHandler('resume');
//step2:该方法由cordova重写所以最终调用的是channel.onResume.subscribe(listener)方法
document.addEventListener("resume", lintener, false);
//step3:触发事件由cordovar内部实现不需要手动触发
channel.onResume.fire()
- define("cordova/exec", function(require, exports, module) {...})
顾名思义该模块是用来执行执行插件的模块以及native回传给js的消息处理
Cordova.js次要模块介绍
- define("cordova/platform", function(require, exports, module) {...})
该模块有用来初始化valumeupbutton,valumedownbutton,menubutton,searchbutton的的事件监听,以及在
cordova onCordovaReady事件触发执行显示webview的操作
- define("cordova/init", function(require, exports, module) {...})
初始化基本监听如pause resume activated
- define("cordova/plugin/android/app", function(require, exports, module) {...})
定义基本操作比如backHistory,clearHistory,loadUrl