Skip to content
This repository was archived by the owner on May 31, 2025. It is now read-only.
Prev Previous commit
Next Next commit
Add hooks for Android direct communication
  • Loading branch information
tomduncalf committed Jan 27, 2021
commit 42cc36c050e07b60c4c0f623058c9823455b7b72
Original file line number Diff line number Diff line change
Expand Up @@ -9,9 +9,16 @@

public class UnityNativeModule extends ReactContextBaseJavaModule implements UnityEventListener {

// Added reference to native method defined in UnityBridge.h for capturing Java env
private native void unityBridgeSetup();

public UnityNativeModule(ReactApplicationContext reactContext) {
super(reactContext);
UnityUtils.addUnityEventListener(this);

// Add call to UnityBridge.h to capture Java env
System.loadLibrary ("juce_jni");
unityBridgeSetup();
}

@Override
Expand Down Expand Up @@ -50,9 +57,19 @@ public void resume() {
UnityUtils.resume();
}

// Added reference to native method defined in UnityBridge.h for direct communcation
private native void unityBridgeOnUnityMessage (String message);

@Override
public void onMessage(String message) {
ReactContext context = getReactApplicationContext();
context.getJSModule(DeviceEventManagerModule.RCTDeviceEventEmitter.class).emit("onUnityMessage", message);
unityBridgeOnUnityMessage (message);
}

// Added callback referenced in UnityBridge.h for direct communcation
public static void postMessageToUnity (final String message)
{
UnityUtils.postMessage("UnityMessageManager", "onRNMessage", message);
}
}