在 Android 中,在 Java 中使用 System.loadLibrary()
加载的库与在 native< 中使用 dlopen()
加载的库有区别吗/em> 代码?我可以直接通过 JNI
以标准方式调用动态加载库中的函数,还是必须使用 dlsym()
检索函数并创建一堆 < em> stub ?
最佳答案
System.loadLibrary()
在 Dalvik VM 中加载一个库,dlopen()
只是在您的 native 进程中加载该库。如果您想从 Java 访问您的库,您需要编写一些粘合 JNI 代码。如何实现这些并不重要:您可以直接链接,或使用 dlopen()
等。
关于android - dlopen 和 System.loadLibrary() 之间的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11624618/