首页 > 解决方案 > 使用 dlopen 和替换函数加载没有完整路径的本机库

问题描述

我目前使用 dlopen 本机函数打开本机库(so 文件)。

handle = dlopen(libPath, RTLD_LAZY);

我使用库的完整路径。不幸的是,对于新的应用程序包安装(abb 文件),无法获取 lib 的路径。有人找到解决方法了吗?

谢谢, 伊莱

标签: androidc++candroid-ndk

解决方案


dlopen使用SONAME图书馆的。dlopen("libmylib.so", ...)不需要绝对路径。如果这不起作用,那么您的库构建不正确,应该按照https://stackoverflow.com/a/48291044/632035进行修复。


推荐阅读