JNI-аргумент jarray имеет тип не массив - PullRequest
0 голосов
/ 10 июля 2019

В моем Java-коде у меня есть следующий метод:


HashSet<String> scanned_items = new HashSet<String>();

String[] getScannedBuffer() {
      String[] result = scanned_items.toArray(new String[0]);
      mReader.getInventoryBufferTagCount((byte) 0xff);

      return result;
}

и в своем коде Qt я называю это так:

QAndroidJniObject response("com/test/RfidReader");
response.callObjectMethod("getScannedBuffer","()[Ljava/lang/String;");

Я пытаюсь перебрать массив строк, используя следующий код:

QAndroidJniEnvironment env;
jobjectArray stringDataArray = response.object<jobjectArray>();
jsize dataArraySize = env->GetArrayLength(stringDataArray);

Однако я получаю следующую ошибку: JNI ОБНАРУЖЕНА ОШИБКА В ПРИЛОЖЕНИИ: аргумент jarray имеет тип, отличный от массива

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...