在使用 C++ (NDK) 构建的共享代码库的应用程序上工作时,Android 2.2 无法加载该库。
当我转到某个视图时,它需要加载从 .so 本机库获得的结果,它适用于 2.3+,但在 2.2 上,应用程序只是进入黑屏。我认为它在加载本机代码的过程中会死掉,但不确定发生了什么。
例如:在 2.3 上,ADT 详细输出如下所示:
04-15 11:49:07.210: 调试/dalvikvm(26048): 试图加载 lib /data/data/com.app.myapp/lib/libViewer.so 0x4051b858
04-15 11:49:07.220:调试/dalvikvm(26048):添加共享库 /data/data/com.app.myapp/lib/libViewer.so 0x4051b858
但在 2.2 上。它只是停留在:
04-15 11:56:27.123: 调试/dalvikvm(275): 试图加载 lib /data/data/com.app.myapp/lib/libViewer.so 0x45f3dc28
它就坐在这里……
有没有人遇到过这样的问题?
从 Java 的代码角度来看,它冻结在行:
static {
System.loadLibrary("nativeViewer");//<-- goes into neverland here
}