I have a simple test react-native project running where I want to run some native code. I followed the dev guide and I have a module and a package class in my android project and I linked it in MainApplication file. They look something like this:
Package:
public class ModulePackage implements ReactPackage { @NonNull @Override public List<NativeModule> createNativeModules(@NonNull ReactApplicationContext reactContext) { List<NativeModule> modules = new ArrayList<>(); modules.add(new ModuleModule(reactContext)); return modules; } @NonNull @Override public List<ViewManager> createViewManagers(@NonNull ReactApplicationContext reactContext) { return Collections.emptyList(); }}And the Module:
@ReactModule(name = ModuleModule.NAME)public class ModuleModule extends ReactContextBaseJavaModule { public static final String NAME = "ModuleModule"; @ReactMethod public String getData() { return "AAAAAAAAAAAAAAAAA"; }}Now I import the module as follows in javascript:
const { ModuleModule} = NativeModules;
And I've put a breakpoint on the line, after breaking and stepping over once so the Module is loaded in I went into the console to check if the function exists so I checked ModuleModule and it returnedObject {getData: Function, getConstants: Function}So the function is clearly there, I just never get my expected return value. Anyone ever encountered something like this before?