欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 健康 > 美食 > Android App引用vendor编写的jni动态库

Android App引用vendor编写的jni动态库

2025/6/6 18:45:11 来源:https://blog.csdn.net/CHALLENG_EVERYTHING/article/details/148400065  浏览:    关键词:Android App引用vendor编写的jni动态库

        简单描述一下,就是我自己基于FastDDS写了一个Jni的so,然后编写了jar包引用该so,最后写了一个Android的测试apk使用jar包,调用jni中的接口去创建Participant,Subscriber等。

        实际将jni的so放到 /system_ext/lib64,将jar包放到 /system/framework后,安装测试Apk,运行的时候报错,提示无法加载jni动态库:

AndroidRuntime: java.lang.UnsatisfiedLinkError: dlopen failed: library "/system_ext/lib64/dds_lcb_jni.so" needed or dlopened by "/apex/com.android.art/lib64/libnativeloader.so" is not accessible for the namespace "classloader-namespace"

         经过DS查询,找到错误原因,是需要将jni动态库加到公共库列表文件中,列表文件的位置在

system/core/rootdir/etc/public.libraries.android.txt

        将so的文件名添加到文件末尾,然后打包编译,烧写镜像后,可以在设备的/system/etc目录下确认public.libraries.txt文件中是否修改成功

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词