替换了 <工程目录>\libs\armeabi\libfriendlyarm-hardware.so
经测试,问题仍然存在。
我的问题是在Android系统中,/System/lib下也有一个libfriendlyarm-hardware.so,System.loadLibrary("friendlyarm-hardware") 应该加载我的工程apk中的libfriendlyarm-hardware.so,对吧?应该不需要更新System/lib/libfriendlyarm-hardware.so吧?我没法确定是不是测试了最新的文件。
假设的确加载了新版库文件,那么问题还是没有解决。
Edit:
重新编译了一份新的Android系统image,烧入后确认了/System/lib/libfriendlyarm-hardware.so的文件大小,证实是新版,测试,运行时间比以前要长,应该有fix一些leak,不过最后还是crash了:
05-18 13:13:46.607: WARN/dalvikvm(1517): ReferenceTable overflow (max=1024)
05-18 13:13:46.607: WARN/dalvikvm(1517): Last 10 entries in JNI pinned array reference table:
05-18 13:13:46.607: WARN/dalvikvm(1517): 1014: 0x408e0748 cls=[B (2068 bytes)
......
05-18 13:13:46.637: WARN/dalvikvm(1517): JNI pinned array reference table summary (1024 entries):
05-18 13:13:46.637: WARN/dalvikvm(1517): 1 of [B 1028B
05-18 13:13:46.637: WARN/dalvikvm(1517): 3 of [B 1036B (3 unique)
......
05-18 13:13:46.647: WARN/dalvikvm(1517): Memory held directly by tracked refs is 1965440 bytes
05-18 13:13:46.647: ERROR/dalvikvm(1517): Failed adding to JNI pinned array ref table (1024 entries)
[ 此帖被jeffy在2011-05-19 04:22重新编辑 ]