Qt 调用 Java 方法笔记

假设遇到相似的错误:

error: undefined reference to '_jstring* QAndroidJniObject::callStaticMethod<_jstring*>(char const*, char const*)'

那就是你使用了一个错误的函数来调用 Java 方法了。

The main difference is that QAndroidJniObject::callMethod returns a primitive data type like jint or jbyte but QAndroidJniObject::callObjectMethod returns an object of type QAndroidJniObject.

Using which one all depends on your needs and the return type of the function you want to call. If your function returns an object type like jobject, jstring, jarray,… then you should definitely use QAndroidJniObject::callObjectMethod. Otherwise you can use either of the two.

就是參照以调用的 Java 方法返回的对象来使用不同的函数,假设返回參数为对象比如是数组,字符串,就使用 QAndroidJniObject::callObjectMethod,假设是基本数据类型就使用 QAndroidJniObject::callMethod


參考

What is the difference between QAndroidJniObject::callMethod() and QAndroidJniObject::callObjectMethod()?

https://bugreports.qt.io/browse/QTBUG-37212

error: undefined reference to ‘_jstring* QAndroidJniObject::callStaticMethod<_jstring*>(char const*, char const*)’

Qt 调用 Java 方法笔记的更多相关文章

  1. JNI C反射调用java方法

    前面记录了调用C的学习笔记,现在来记录一下C反射调用Java的笔记.JNI开发学习之调用C方法 Android开发中调用一个类中没有公开的方法,可以进行反射调用,而JNI开发中C调用java的方法也是 ...

  2. C++调用JAVA方法详解

    C++调用JAVA方法详解          博客分类: 本文主要参考http://tech.ccidnet.com/art/1081/20050413/237901_1.html 上的文章. C++ ...

  3. C#调用Java方法(详细实例)

    C#可以直接引用C++的DLL和转换JAVA写好的程序.最近由于工作原因接触这方面比较多,根据实际需求,我们通过一个具体例子把一个JAVA方法转换成可以由C#直接调用的DLL C#调用c++ C#调用 ...

  4. Js调用Java方法并互相传参

    Js通过PhoneGap调用Java方法并互相传参的. 一.JAVA代码 写一个类,该类继承自Plugin并重写execute方法. import org.json.JSONArray; import ...

  5. HAL中通过JNI调用java方法【转】

    转载请注明本文出处:http://www.cnblogs.com/xl19862005 作者:Xandy 由于工作的需要,最近一直在研究HAL.JNI.Java方法之间互调的问题,并做了如下一些记录和 ...

  6. C#调用Java方法

    C#调用Java方法(详细实例) 阅读目录 C#调用c++ C#调用JAVA方法 C#可以直接引用C++的DLL和转换JAVA写好的程序.最近由于工作原因接触这方面比较多,根据实际需求,我们通过一个具 ...

  7. cocos2d-x中使用JNI的调用JAVA方法

    用cocos2d-x公布Android项目时.都应该知道要用JAVA与C/C++进行交互时会涉及到JNI的操作(Java Native Interface).JNI是JAVA的一个通用接口.旨在本地化 ...

  8. Android Studio NDK开发-JNI调用Java方法

    相对于NDK来说SDK里面有更多API可以调用,有时候我们在做NDK开发的时候,需要在JNI直接Java中的方法和变量,比如callback,系统信息等.... 如何在JNI中调用Java方法呢?就需 ...

  9. java native interface JNI 调用Java方法

    在上一篇文章中介绍了JNI.以及java调用JNI.这篇讲一下 JNI调用java方法. 通过使用合适的JNI函数,你能够创建Java对象,get.set 静态(static)和 实例(instanc ...

随机推荐

  1. Ubuntu18.04 NVIDIA显卡驱动 安装大全

    离线安装NVIDIA显卡驱动 费了一天的劲,走了好多的坑,最主要的原因是gcc版本的问题,一定要用最新版本的gcc!!! 1)官网下载显卡驱动 2)apt 下载gcc包及其依赖包,可用apt-cach ...

  2. 如何使用postman访问网站

    1.输入Request URL2.选择Request Method3.输入需要的Request Headers注意:一般token会在Headers中

  3. 分享点干货(此this非彼this)this的详细解读

    在javascript编程中,this关键字经常让初学者感到迷惑,这里,针对此this根据查阅的资料和个人的理解分享一下,纯手打,大神勿喷. 首先先说一下this的指向,大致可以分为以下四种. 1.作 ...

  4. 【linux 06】 linux中的用户权限、文件权限与目录权限

    1.用户及用户组的概念: 1.文件所有者 2.用户组 3.用户 以root登录Linux之后,执行ls -al,会看到有关文件属性的信息 -rw-r--r--,第1个字符代表这个文件是“目录,文件或链 ...

  5. RabbitMQ 关键词解释

    源地址: https://www.cnblogs.com/hz04022016/p/6518138.html RabbitMQ是流行的开源消息队列系统,用erlang语言开发.RabbitMQ是AMQ ...

  6. python基础知识02-序列类型的方法

    列表的方法: 增:append() insert() extend()只能添加序列类型. .改li[0]= '123' li.insert(2,'123') 2个参数,位置,值 li.remove(' ...

  7. k fit in Park Model

    software: Gnuplot input: area_averaged_axial_mean_velocity_TI_1.txt # One Rotor, front, eldad blade ...

  8. python测试工具

    https://wiki.python.org/moin/PythonTestingToolsTaxonomy mac pip安装 https://blog.csdn.net/ywj_486/arti ...

  9. luogu4093 [HEOI2016/TJOI2016]序列

    因为一个变化只会变化一个值,所以 \(dp[i]=max(dp[j])+1,j<i,maxval_j \leq a[i], a[j] \leq minval_i\) 发现跟二维数点问题挺像,树状 ...

  10. python 监控oracle 数据库

    import cx_Oracle import os db = cx_Oracle.connect('**********') print "Show Oracle Version: &qu ...