を使おうとしていますQAndroidJniObject
。テストとして、2 つの Java 関数を呼び出しています。1 つは int を返し、もう 1 つは文字列を返します。
int を返す場合、このコードは正常にコンパイルされます。
jint a = QAndroidJniObject::callStaticMethod<jint>("HelloJava", "getInt");
しかし、文字列を返す関数を呼び出すように変更すると、失敗します。
jstring b = QAndroidJniObject::callStaticMethod<jstring>("HelloJava", "getString");
で失敗します
エラー: '_jstring* QAndroidJniObject::callStaticMethod<_jstring*>(char const*, char const*)' への未定義の参照
はテンプレート関数であるためQAndroidJniObject::callStaticMethod
、ある型では定義されているが、別の型では定義されていないのはどうすればよいでしょうか?
編集:実際には、 、 、 、 などでテストしたところですjobject
。jbyteArray
これjbooleanArray
がjbyte
私が見つけjboolean
たものです。jshort
jint
jlong
jboolean
undefined reference