如何在不继承ReactContextBaseJavaModule类时向JS发送事件?



  • 我正在使用阿里云的消息推送,已经成功接收到控制台发送的测试消息并在控制台打印,但还需要在接受消息的回调函数中向JS发送事件以进行后续处理,但阿里云的接受类已经继承MessageReceiver,使用
    ReactApplicationContext reactContext = new ReactApplicationContext(context);
    转换之后调用sendEvent方法时
    reactContext
    .getJSModule(DeviceEventManagerModule.RCTDeviceEventEmitter.class)
    .emit(eventName, params);
    发生错误,控制台提示错误信息:
    Notify message error:
    java.lang.RuntimeException: Tried to access a JS module before the React instance was fully set up. Calls to ReactContext#getJSModule should only happen once initialize() has been called on your native module.
    求教解决方法



  • 你会安卓开发吗?



  • 错误信息都已经很明显了,这并不是让你在不继承ReactContextBaseJavaModule类时向JS发送事件,而是你还没有创建好RN环境,包括ReactInstanceManager、ReactContext等核心对象,这些都没有你自然发不了事件啊。


登录后回复