android项目中如何加载已有so库?

android项目中如何加载已有so库?,第1张

android项目中如何加载已有so库方法

1、在项目根目录下建立文件夹libs/armeabi文件夹。

2、将so库放入libs/armeabi文件夹注意事项:

(1)如果采用静态注册的方式请注意C文件中严格按照命名规则Java_packageName_className_method()的方式命名。

(2)在Android项目中建立同上述命名规则中packageName中相同的包名,在此包名下建立同上述命名规则中className相同的类名。

(3)在className声明native方法。

(4)程序中加载so库System.loadLibrary。(data/data/xxx.xxx.xxx/lib/xx.so)或者System.loadLibrary(xx),例如:System.loadLibrary(data/data/com.dtBank.app.service/lib/libjnixcld.so)。

APP开发时,可能会碰到引入第三方so文件的需求,可以根据以下步骤引入

一、新建jnilibs目录,或者直接放入libs目录

二、修改build.gradle文件,添加sourceSets jniLibs.srcDirs配置,如果放入libs,那么srcDirs应配置为libs

前两步已经说明如何引入so文件,那么如何调用.so文件里面的方法呢?拷贝或新建调用类,注意包名,在类中创建相应方法,假设C文件的方法为Java_a_b_c_JniUtils_test,需创建的类及方法:


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/bake/11260047.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-14
下一篇 2023-05-14

发表评论

登录后才能评论

评论列表(0条)

保存