使用Cordova从本机触发事件到javascript的正确方法是什么?

使用Cordova从本机触发事件到javascript的正确方法是什么?,cordova,cordova-plugins,Cordova,Cordova Plugins,我找不到任何文章/博客/文档解释如何使用Cordova从本机Android/iOS启动事件到javascript 如何实现这种异步通信?这就是cordova插件网络信息如何实现的 var cordova = require('cordova'); cordova.fireDocumentEvent('offline'); 然后你就这样听着: document.addEventListener("offline", yourCallbackFunction, false); cordova.f

我找不到任何文章/博客/文档解释如何使用Cordova从本机Android/iOS启动事件到javascript


如何实现这种异步通信?

这就是
cordova插件网络信息
如何实现的

var cordova = require('cordova');
cordova.fireDocumentEvent('offline');
然后你就这样听着:

document.addEventListener("offline", yourCallbackFunction, false);
cordova.fireWindowEvent('statusTap');
window.addEventListener('statusTap', yourCallbackFunction);
Statusbar插件是这样做的:

document.addEventListener("offline", yourCallbackFunction, false);
cordova.fireWindowEvent('statusTap');
window.addEventListener('statusTap', yourCallbackFunction);
然后你就这样听着:

document.addEventListener("offline", yourCallbackFunction, false);
cordova.fireWindowEvent('statusTap');
window.addEventListener('statusTap', yourCallbackFunction);
在本机部分,它与任何其他插件回调一样,对于statusbar插件,iOS也是这样

CDVPluginResult* result = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK messageAsDictionary:payload];
    [result setKeepCallbackAsBool:YES];
    [self.commandDelegate sendPluginResult:result callbackId:_eventsCallbackId];
重要的部分是将
setKeepCallbackAsBool
设置为
YES
,用于允许多次调用回调,而回调就是触发事件的回调