3

JNI から文字列の ArraList を受け入れる Java API を呼び出そうとしています。

/*My Java Method that needs to be called from JNI*/

public void postArrayListOfStringsToJavaFromJNI(ArrayList<String> list)
{
}

//I am trying to create the methodId like below in JNI to call my Java API postArrayListOfStringsToJavaFromJNI

jmethodID method_id = env->GetMethodID(dmrcallbacks, "postArrayListOfStringsToJavaFromJNI", "(Ljava/lang/Object;)V");

しかし、私はエラーが発生しています

11-22 23:22:45.130: E/AndroidRuntime(19189): java.lang.NoSuchMethodError: no method with name='postArrayListOfStringsToJavaFromJNI' signature='(Ljava/lang/Object;)V' in class Lcom/example/JavaSample;

パラメータ「ArrayList」を使用して Java API を呼び出すための最初のパラメータとして「(Ljava/lang/Object;)V」を持つ GetMethodID 呼び出しに問題はありますか?

4

1 に答える 1

3

(Ljava/lang/Object;)Vvoidtype の単一のパラメーターを取るメソッドのシグネチャです。代わりにjava.lang.Object必要になると思われます。(Ljava/util/ArrayList;)V

于 2012-11-22T18:17:17.393 に答える