大橙子网站建设,新征程启航

为企业提供网站建设、域名注册、服务器等服务

androidso库,android第三方库

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

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)。

Android下查看SO库的依赖

Android下查看SO库具体还依赖了哪些so库

ndk中的readelf

在ndk的toolchains 中可以找到对应的可执行程序

路径例如:

D:\AndroidSDK\ndk\17.2.4988734\toolchains\arm-linux-androideabi-4.9\prebuilt\windows-x86_64\bin 下 arm-linux-androideabi-readelf.exe

一般文件位置在system文件夹下,通过adb或者Android studio的Device File Explore 中可以查看到有lib跟lib64下大量的.so文件,如libmedia.so, libandroid.so, libc.so等

如何获取android 系统的so库

android ndk调用第三方的so库文件的步骤如下:

1.将SO文件直接放到libs/armeabi下,然后代码中System.loadLibrary("xxx");再public native static int xxx_xxx_xxx();接下来就可以直接调用xxx_xxx_xxx()方法;

2.第二种方案,创建自己的SO文件,在自己的SO文件里调用第三方SO,再在程序中调用自己的SO,这种比较复杂,需要建java类文件,生成.h文件,编写C源文件include之前生成的.h文件并实现相应方法,最后用android NDK开发包中的ndk-build脚本生成对应的.so共享库;


标题名称:androidso库,android第三方库
转载注明:http://dzwzjz.com/article/dsshhcj.html
在线咨询
服务热线
服务热线:028-86922220
TOP