Qt for Android(七) —— QT 如何使用第三方jar包和so库

1,248 阅读1分钟

这是我参与8月更文挑战的第6天,活动详情查看:8月更文挑战

这篇文章要基于前面的基础,我们才能继续下面的内容,建议阅读。

Qt for Android(一) —— QT 中如何调用android方法

Qt for Android(二) —— QT 中调用自定义Android方法详细教程(获取Android设备的SN号)

Qt for Android(三) —— QT 中获取 Android 的Services,并调用需要Context参数的 c方法(设置音量、亮度等)

我们总会有一些需求是引入第三方jar包或者so库实现一些功能,比如引入bugly,或者其他三方jar。 QT for Android中引入第三方jar包比较简单,我就大概说一下步骤,原理其实和android原生的做法是一样的。

基于文章二, 我们首先在android 目录下新建 libs 文件夹,如果是jar包,就放到libs文件夹,如果是so库,看下图:

在这里插入图片描述

点击图中的 add 按钮,选择你需要添加的so库,注意要和你构建的abi一致,比如你的项目要构建armeabi-v7a的apk,则so库也要添加对应版本的。QT Creator 会自动将so库添加到 pro 文件中,打开你的 pro文件就能看到。

在这里插入图片描述

添加完成后这个 jar 包就可以直接使用了。不管是新建 java 类去使用,还是在 qt中使用,都没问题了。关于如果在java中使用看文章二

在QT中使用的话就需要通过JNI中转一下,先调用Java函数,再通过Java函数调用Jar包的函数即可。

jar包其实就是一堆class文件的封装,它就像我们调用普通java函数一样。