【问题标题】:Android how to call java function from JNI with ArrayList as out parameterAndroid如何使用ArrayList作为输出参数从JNI调用java函数
【发布时间】:2016-05-27 08:16:11
【问题描述】:

我有一个类似的java函数

public void OnResult(int i, ArrayList<String> a_strList);

我想从 JNI C++ 调用这个函数。

我添加了以下抛出异常的代码:

应用程序中检测到 JNI 错误:调用 JNI NewGlobalRef 时出现未决异常 java.lang.NoSuchMethodError..

mID=a_pEnv->GetMethodID(javaclass, "OnResult", "(ILjava/lang/ArrayList;)V");

请纠正我。

【问题讨论】:

    标签: java-native-interface


    【解决方案1】:

    有点晚了,但可能对其他人有所帮助:它应该是“(ILjava/util/ArrayList;)V”。

    您可以使用“javap -s myclass.class”命令为您的方法自动获取正确的描述符(有关参数,请参阅docs)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-11-08
      • 2023-04-09
      • 1970-01-01
      • 1970-01-01
      • 2022-01-24
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多