我正在使用 NDK 为 Android 编写本机库(mylib.so)。Mylib.so 依赖于 libssl.so。
Android NDK 文档告诉我不应该使用 system/lib 中的 libssl.so,因为它不是稳定 API 的一部分。相反,我应该自己交叉编译 libssl 并将其添加到 NDK。
但是我看到 mylib.so 会自动与 system/lib/libssl.so 链接,因为 dalvik vm(正在加载 mylib.so)已经依赖于 libssl.so。
$ readelf -d /system/bin/dalvikvm | grep Shared
0x00000001 (NEEDED) Shared library: [libdvm.so]
0x00000001 (NEEDED) Shared library: [libssl.so]
0x00000001 (NEEDED) Shared library: [libz.so]
0x00000001 (NEEDED) Shared library: [libc.so]
0x00000001 (NEEDED) Shared library: [libstdc++.s
0x00000001 (NEEDED) Shared library: [libm.so]
那么处理这个问题的正确方法是什么?仍然使用 system/lib/libssl.so 吗?
谢谢