我注意到Qt文档提供了两种调用android原生方法的方法,但我无法确定何时使用QAndroidJniObject::callMethod
以及何时使用QAndroidJniObject::callObjectMethod
。规则是什么?
答案 0 :(得分:3)
主要区别在于QAndroidJniObject::callMethod
返回原始数据类型,如jint
或jbyte
,但QAndroidJniObject::callObjectMethod
会返回QAndroidJniObject
类型的对象。
使用哪一个都取决于您的需要和您要调用的函数的返回类型。如果你的函数返回一个对象类型,如jobject
,jstring
,jarray
,...那么你绝对应该使用QAndroidJniObject::callObjectMethod
。否则你可以使用两者中的任何一个。