У меня есть файл библиотеки Aar, его необходимо связать с приложением Android, которое выполняет асинхронные вызовы этой библиотеки с помощью JNI Call. Эти JNI-вызовы должны вызывать соответствующие функции в файле Class.
Android Асинхронные вызовы -> c ++ JNI -> library (aar)
Здесь в файле aar есть JNI-прием и вызовы в файл Android Class. Из JNI нам нужно передать контекст в файл Android Class.
Элемент управления приходит в JNIClass_Initialize (), где передается контекст и jenv_obj.
Отсюда не удалось найти класс, так как этот класс не был начат
Как запустить файл класса из интерфейса JNI.
Ниже приведен код:
Получение
int JNIClass_Initialize(
void *context
, void *jenv_obj
) {
//Not able to initiate or invoke Class functions.
jclass cls = (jniEnvVal.env)->FindClass("ae/info/TestReader");
//Here it is crashing - As not getting the class
jmethodID initFun1= (jniEnvVal.env)->GetStaticMethodID(cls, "Init_func", "(Landroid/content/Context;)I");
jint retVal = (jniEnvVal.env)->CallStaticIntMethod(cls, initFun1= ,context);
}
public class TestReader{
Init_func(Context cnt) {
//Process it
}
}
Спасибо за любую помощь.