【问题标题】:jni accessing jobjectArray from jobjectjni 从 jobject 访问 jobjectArray
【发布时间】:2018-04-22 09:00:51
【问题描述】:

我有 jobject 并且里面有 jobjectArray,我正在使用 GetObjectField 获取 jobjectArray 然后投射它,但它不工作任何人都可以帮忙吗?


 jfieldID representationArrayF = env->GetFieldID(className, "representationArray", "[Lcodec/video/initial/MMRepresentation");
 jobject objectArr=(jobject)env->GetObjectField(jpresentationInfo, representationArrayF);
 jobjectArray*  objectArray=reinterpret_cast<jobjectArray*>(&objectArr);
 jobject representation=(jobject) env->GetObjectArrayElement(*objectArray, i)

【问题讨论】:

标签: java java-native-interface


【解决方案1】:

这是一个愚蠢的错误,简单的参数很好,但数组参数它不起作用而不是 [Lcodec/video/initial/MMRepresentation ,我必须把 [Lcodec/video/initial/MMRepresentation;分号结尾

不知道用 III 分号这样的简单参数是不是必须的

【讨论】:

  • 道德:不要猜测。使用javap -s 的输出。永远不会错。
  • 谢谢 :)
  • 所有对象都需要 'L + 全路径名 + ;'只有基元有它们的值
猜你喜欢
  • 1970-01-01
  • 2015-09-03
  • 1970-01-01
  • 1970-01-01
  • 2015-07-21
  • 1970-01-01
  • 2017-11-23
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多