I am trying to use (*env)->RegisterNatives to add methods to a defined class which I then add to a callback list.
The callback sender of course expects my class to implement a certain interface which I do not. And is failing on execution.
If I add the keyword “implements Listener” to my class in Java the javac expects to have the methods definition in Java or with native keyword which I try to avoid here, as I’d like to register the methods within the JNI_OnLoad and execute one of them afterwards.
The question now is: Can I implement the interface in JNI or avoid the error message in Java?
RegisterNativesdoesn’t add new native methods, it registers native function for the existing native method in the class. If someone doesn’t call RegisterNatives for a native method, theJVMwill search allDLLlibraries for its implementation when method is called for the first time.So, add
implements Listener, write definitions withnativekeyword and register their implementation withRegisterNatives.