什么's��方法签名�� 使用JNI调用Java方法时的参数?

 2023-01-19    368  

问题描述

我想使用QT中的JNI调用Android Java方法.有一个我无法理解的奇怪的”方法签名”参数.这是什么,我应该如何设置?

在示例中类似于(II)I或(I)I.这是什么意思?

什么's��方法签名�� 使用JNI调用Java方法时的参数?

例如:

jint max = QAndroidJniObject::callStaticMethod<jint>("java/lang/Math", "max", "(II)I", a, b);

推荐答案

文档中都解释了所有内容.
http://docs.oracle.com/javase http://docs.oracle.com/javase/7/docs/technotes/guides/jni/spec/types.html

Type Signature   Java Type
Z                boolean
B                byte
C                char
S                short
I                int
J                long
F                float
D                double
L fully-qualified-class ;   fully-qualified-class
[ type           type[]
( arg-types ) ret-type method type

您的(II)I是将两个整数作为参数并返回int的方法.例如. int m(int i, int j).

一种方法void print(String message)将是(Ljava/lang/String;)

以上所述是小编给大家介绍的什么&#39;s��方法签名�� 使用JNI调用Java方法时的参数?,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对77isp云服务器技术网的支持!

原文链接:https://77isp.com/post/25810.html

=========================================

https://77isp.com/ 为 “云服务器技术网” 唯一官方服务平台,请勿相信其他任何渠道。