2

私は NDK を使用してネイティブ android プロジェクトに取り組んでいます。私のコードは C のみで、JNI 経由で Java 関数を呼び出す必要があります。

試してみたところ、、、などのクラスからいくつかのメソッドを呼び出すことができandroidます。しかし、使用しようとすると例外が発生します。viewWindowManageTextView.setTextjava.lang.NoSuchMethodError

コードは次のとおりです。

 JNIEnv* jni;
 state->activity->vm->AttachCurrentThread(&jni, NULL);


 jclass activityClassMine = jni->FindClass("android/widget/TextView");
 if(!(activityClassMine))
 LOGI("can't find TextView class...");

 jmethodID SetTextColour = jni->GetMethodID
                              ( activityClassMine
                              , "setTextColor"
                              , "(I)V");        //this works !!!!
 if(!(SetTextColour))
LOGI("textColour Failed...");

 jmethodID getSetText = jni->GetMethodID
                              ( activityClassMine
                              , "setText"
                              , "(Ljava/lang/CharSequence;)V");

 if(!(getSetText))      //failed                               
 LOGI("setText Failed");

メソッドの署名を確認しましたが、問題ありません。このメソッドで使用可能な他の署名を試しましたが、成功しませんでした...

4

0 に答える 0