QAndroidJniObject::callMethod() 和 QAndroidJniObject::callObjectMethod() 有什么区别?
What is the difference between QAndroidJniObject::callMethod() and QAndroidJniObject::callObjectMethod()?
我注意到 Qt 文档提供了两种调用 android 本机方法的方法,但我不知道何时使用 QAndroidJniObject::callMethod
以及何时使用 QAndroidJniObject::callObjectMethod
。规则是什么?
主要区别在于 QAndroidJniObject::callMethod
return 是原始数据类型,如 jint
或 jbyte
但 QAndroidJniObject::callObjectMethod
return 是对象类型 QAndroidJniObject
.
使用哪一个完全取决于您的需要和您要调用的函数的 return 类型。如果你的函数 return 是像 jobject
、jstring
、jarray
、... 这样的对象类型,那么你绝对应该使用 QAndroidJniObject::callObjectMethod
。否则你可以使用两者中的任何一个。
我注意到 Qt 文档提供了两种调用 android 本机方法的方法,但我不知道何时使用 QAndroidJniObject::callMethod
以及何时使用 QAndroidJniObject::callObjectMethod
。规则是什么?
主要区别在于 QAndroidJniObject::callMethod
return 是原始数据类型,如 jint
或 jbyte
但 QAndroidJniObject::callObjectMethod
return 是对象类型 QAndroidJniObject
.
使用哪一个完全取决于您的需要和您要调用的函数的 return 类型。如果你的函数 return 是像 jobject
、jstring
、jarray
、... 这样的对象类型,那么你绝对应该使用 QAndroidJniObject::callObjectMethod
。否则你可以使用两者中的任何一个。