В чем разница между QAndroidJniObject::callMethod() и QAndroidJniObject::callObjectMethod()?


Я заметил, что документация Qt предлагает два метода для вызова собственных методов android, но я не могу понять, когда использовать QAndroidJniObject::callMethod и когда использовать QAndroidJniObject::callObjectMethod. Что это за правило?

1 3

1 ответ:

Основное отличие состоит в том, что QAndroidJniObject::callMethod возвращает примитивный тип данных, например jint или jbyte, но QAndroidJniObject::callObjectMethod возвращает объект типа QAndroidJniObject.

Использование которого зависит от ваших потребностей и типа возвращаемой функции, которую вы хотите вызвать. Если функция возвращает тип объекта, например jobject, jstring, jarray,... тогда вы обязательно должны использовать QAndroidJniObject::callObjectMethod. В противном случае вы можете использовать любой из них.