QAndroidJniObject :: callMethod()和QAndroidJniObject :: callObjectMethod()之间有什么区别?

时间:2015-03-03 13:08:34

标签: android c++ qt qt5 qtandroidextras

我注意到Qt文档提供了两种调用android原生方法的方法,但我无法确定何时使用QAndroidJniObject::callMethod以及何时使用QAndroidJniObject::callObjectMethod。规则是什么?

1 个答案:

答案 0 :(得分:3)

主要区别在于QAndroidJniObject::callMethod返回原始数据类型,如jintjbyte,但QAndroidJniObject::callObjectMethod会返回QAndroidJniObject类型的对象。

使用哪一个都取决于您的需要和您要调用的函数的返回类型。如果你的函数返回一个对象类型,如jobjectjstringjarray,...那么你绝对应该使用QAndroidJniObject::callObjectMethod。否则你可以使用两者中的任何一个。