Qt for Android生成的so库,在Java for Android中被调用,请问有什么思路吗?
发布网友
发布时间:2022-04-25 16:51
我来回答
共1个回答
热心网友
时间:2023-10-20 06:26
可以调用,但是不能直接调用,要通过代码目的JNI去调用,在JNI中导入头文件,通过NDK编译成功后即可。
NDK编译步骤:
1.选择 ndk 自带的例子 hello-jni ,我的位于E:\android-ndk-r5\samples\hello-jni( 根据具体的安装位置而定 ) 。
2.运行 cygwin ,输入命令 cd /cygdrive/e/android-ndk-r5/samples/hello-jni ,进入到 E:\android-ndk-r5\samples\hello-jni 目录。
3.输入 $NDK/ndk-build ,执行成功后,它会自动生成一个 libs 目录,把编译生成的 .so 文件放在里面。 ($NDK是调用我们之前配置好的环境变量, ndk-build 是调用 ndk 的编译程序 )
4.此时去 hello-jni 的 libs 目录下看有没有生成的 .so 文件,如果有,ndk 就运行正常啦。追问谢谢你的回答,我对Java Android这块暂时不是很熟悉,具体操作我实践过后再提问吧,但是我们Qt代码这块代码量非常大,您觉得能应付吗?