【发布时间】:2020-11-11 17:41:15
【问题描述】:
我正在用虚幻引擎开发一个应用程序,所以基本编码是用 C++ 编写的,我必须从 .jar 访问一些方法
我访问了简单的 java 函数,返回:boolean、int、string(本机数据类型):
JavaMethod_GetJavaString = JavaClassObject_Manager->GetClassMethod("GetJavaString", "()Ljava/lang/String;");
我称这个方法为:
jstring myJStr = static_cast<jstring>(JavaClassObject_Manager->CallMethod<jobject>(JavaMethod_GetJavaString));
JNIEnv* Env = AndroidApplication::GetJavaEnv();
const char* myUTFString = Env->GetStringUTFChars(myJStr, nullptr);
std::string myCStr(UTF8_TO_TCHAR(myUTFString));
但上面的代码是为了从 JAVA 获取单个字符串,我想要一个 JAVA 对象数组。当我在寻找 JAVA 和 JNI 时,我遇到了“jarray”和“jobjectarray”。但找不到任何文档或示例来获取 C++ 中的 java 对象数组
【问题讨论】:
标签: java c++ arrays android-ndk java-native-interface