Obecnie używam C++ i Java w projekcie i chciałbym móc wysłać obiekt, który jest zawarty w C++ do mojego interfejsu Java, aby zmodyfikować go przez GUI, a następnie wysłać modyfikację z powrotem w C++.Zwracanie klasy C++ do Javy przez JNI
Do tej pory zwracałem albo nic, int, albo boolean do Javy przez interfejs JNI. Tym razem muszę wysłać obiekt przez interfejs. Udostępniłem podobną definicję klasy zarówno w C++, jak iw Javie. Chciałbym wiedzieć, jak utworzyć obiekt, dzięki czemu będę mógł go używać w Javie.
W C++ mam:
JNIEXPORT MyObject JNICALL Java_ca_X_Y_Z_C_1getMyObject(JNIEnv* env, jclass, jint number);
Ta funkcja będzie sprawdzony przez Java w celu uzyskania obiektu z C++ boku (obiekt jest zawarty w Singleton, łatwo dostępne).
Na koniec Java zrobić prosty wywołanie tej metody,
MyObject anObject = C_getMyObject(3);
które powinny powrócić mi nowo utworzony obiekt.
Java aktualnie zwraca mi błąd UnsatisfiedLinkError, gdy wykonuję rzeczywiste połączenie. Co jest nie tak?