使用Worklight从本机Android代码启动javascript事件侦听器

使用Worklight从本机Android代码启动javascript事件侦听器,android,ibm-mobilefirst,cordova-plugins,Android,Ibm Mobilefirst,Cordova Plugins,我正在阅读以下教程: 我正试图按照教程进行操作,并将其与ReactJS集成到我的应用程序中。我创建了一个插件来调用原生代码和javascript代码,我的Cordova插件位于HybirdBridge.java中,我的javascript监听器位于NativeEventListener.js中。我的代码可以在这里找到: 我在操作栏中有一个搜索按钮。当我单击搜索按钮时,我尝试调用javascript事件,但它在listenerCallbackContext中抛出空指针异常 我不知道为什么?有人能

我正在阅读以下教程:

我正试图按照教程进行操作,并将其与ReactJS集成到我的应用程序中。我创建了一个插件来调用原生代码和javascript代码,我的Cordova插件位于
HybirdBridge.java
中,我的javascript监听器位于
NativeEventListener.js
中。我的代码可以在这里找到:

我在操作栏中有一个搜索按钮。当我单击搜索按钮时,我尝试调用javascript事件,但它在
listenerCallbackContext
中抛出空指针异常

我不知道为什么?有人能帮我吗


谢谢

有关此主题的更多信息,请查看MobileFirst平台(以前称为Worklight)开发者中心

以下链接提供了Android、iOS和Windows Phone的各种教程,介绍如何将本机功能添加到混合应用程序中

从Worklight 6.2开始,您可以使用以下代码在hybrid和native之间来回传递数据,而无需创建自己的Cordova插件:

混合到本地的

发送

混合到本地的

接收

本地到混合

发送

接收

有关此访问的更多信息,请访问:

其他有用的链接:

IBM MobileFirst平台入门:

IBM移动第一平台基金会V7知识中心:


还有一篇关于ReactJS和MFP的博文:谢谢@Yoel Nunez。我试试看。
var data = { someproperty : 1234 };
WL.App.sendActionToNative("doSomething", data);
WL.getInstance().addActionReceiver(new WLActionReceiver() {
    void onActionReceived(String action, JSONObject data){
      // process received action
    }
});
JSONObject data = new JSONObject();
data.put("someProperty", 12345);
WL.getInstance().sendActionToJS("doSomething", data);
WL.App.addActionReceiver ("MyActionReceiverId", function(received) {
    if (received.action === "doSomething"){ 
        // handle the data received
    }
});