この質問から次のコードを書きましたが、コンパイルされて完全に機能しました。
QAndroidJniObject str =  QAndroidJniObject::callStaticObjectMethod<jstring>(
                               "org/.../TestClass"
                               ,"staticMethod");
Java メソッドを変更したので、文字列型の入力パラメータが必要です。
Java コード:
public class TestClass{
    public string str;
    public TestClass() {
        str = "Test From Java";
    }
    public static String staticMethod(String str) {
        return "Test From Java, "+str;
    }
}
しかし、メソッドの署名と入力パラメーターを追加してもうまくいきません。JNIを使用して、前述のJavaクラス内で静的メソッドを呼び出すために、次のコードを作成しました。
QAndroidJniObject val = QAndroidJniObject::fromString("Test String");
QAndroidJniObject str = QAndroidJniObject::callStaticObjectMethod<jstring>(
          "org/.../TestClass"
          ,"staticMethod"
          ,"(Ljava/lang/String;)Ljava/lang/String;"
          ,val.object<jstring>());
しかし、Qt 作成者はそれをビルドせず、次のエラーを出力します。
...testclass.cpp:21: error: no matching function for call to 'QAndroidJniObject::callStaticObjectMethod( const char [36], const char [13], const char [39], _jstring*)' ,val.object<jstring>()); ^
助けてくれてありがとう。
私もcallStaticMethodを試しました
このため:
jstring str = QAndroidJniObject::callStaticMethod<jstring>(
                      "org/.../TestClass"
                      ,"staticMethod"
                      ,"(Ljava/lang/String;)Ljava/lang/String;"
                      ,val.object<jstring>());
次のエラーが発生しました:
...\testclass.cpp:21: エラー: '_jstring* QAndroidJniObject::callStaticMethod<_jstring*>(char const*, char const*, char const*, ...)' への未定義の参照
## テンプレート パラメータなしで callStaticObjectMethod も試してみました ##
QAndroidJniObject str = QAndroidJniObject::callStaticObjectMethod("org/...TextClass" ,"staticMethod" ,"(Ljava/lang/String;)Ljava/lang/String;",val.object());
常に空の文字列を返します。本当に空っぽかどうかはわかりません。文字列を出力するために使用qCritical() << str.toString();しますが、空の qout が出力されます!