我试图实现 NDK 共享库需要在 Linux 中编译为 .so 文件的其他外部本机库。
我有以下关系:libl1 依赖于 libl2。
我尝试将预构建的 libl2.so 作为共享并将其添加到 libl1 模块中。当我像这样加载 libl1 时,一切都编译得很好,并且在我的 LG Nexus 4 上工作正常:
static {
System.loadLibrary('l1');
}
但它不适用于三星 4.03 Android 版本。在此设备中,它使用以下代码:
static {
System.loadLibrary('l2');
System.loadLibrary('l1');
}
我发现Android ClassLoader 无法加载依赖。但为什么它在 Nexus 4 上运行良好?但不是三星设备?