Android包管理器只解包libxxx.so命名库

时间:2014-05-09 15:28:02

标签: android java-native-interface apk native

我创建了一个使用dlopen动态加载插件的jni库,插件库文件具有不同的命名,例如: zzz_abc.so

eclipse和ant正确地将这些文件捆绑在apk中,但android packagemanager只解包名为libxxx.so的文件,其他文件名模式被忽略,也许在调试中,gdbserver在我的4.1手机上添加并解压缩(但是不是4.4 genymotion模拟器。)

控制这种行为有“魔力”吗?

2 个答案:

答案 0 :(得分:1)

我已经验证并且遗憾的是,本机库安装程序仅复制libxxx.sogdbserver等文件名,如果有人对代码位于frameworks/base/core/jni/com_android_internal_content_NativeLibraryHelper.cpp感兴趣。

答案 1 :(得分:0)

Android Package Manager根据设备处理器架构(armv7a,armv6,x86,mips)复制库。因此,如果您使用基于x86的模拟器,则需要提供库的x86版本。