在Android中,如何在jni_onLoad方法中加载其他共享库?

时间:2015-02-11 12:24:23

标签: android c++ android-ndk

在我的android项目中,有两个共享库a.so和b.so,现在,我想在a.so中的jni_onload方法中加载b.so,我写了dlopen,dlsym并且可以找到他们的返回,但它还需要一个classLoader,我接下来该怎么做,你能给我一些建议吗?谢谢!

1 个答案:

答案 0 :(得分:1)

您可以使用dlopen然后在JNI_OnLoad的其他库中搜索dlsym,如果其他库在JNI_OnLoad中注册所有原生代码,则运行它System.loadLibrary() })。如果您需要使用延迟解析,则需要从JNI_OnLoad而不是dlopen致电{{1}}。