0

这是一个android gdx游戏项目,我觉得不是很重要,可能是。我的应用程序有两个.so文件:gdx.sofreetype.so. 现在原生层出现了严重的内存泄漏。

我试图adb shell am dumpheap -n转储本机内存堆并使用native_heapdump_viewer.py谷歌来解析它,就像文档说的那样。然后发生了一个奇怪的问题。

这是已解析堆的一部分:

   BYTES.  %TOTAL %PARENT    COUNT           ADDR.         LIBRARY.         FUNCTION LOCATION
150995808  32.70% 100.00%       72       e22ca701 /apex/com.android.art/lib/libart.so ??? ???
150995808  32.70% 100.00%       72         e2114392 /apex/com.android.art/lib/libart.so ??? ???
150995808  32.70% 100.00%       72           e207faf2 /apex/com.android.art/lib/libart.so ??? ???
150995808  32.70% 100.00%       72             e2086132 /apex/com.android.art/lib/libart.so ??? ???
150995808  32.70% 100.00%       72 [!HERE!]->   b89d73c8 /data/app/~~Gc8PoEgh7qxkd3ami6f_zQ==/com.example.mobile-WN4rRCxbP9Pu00JRJ5XLpA==/base.apk ??? ???
150994944  32.70% 100.00%       36 [!HERE!]->    b89dc2dc /data/app/~~Gc8PoEgh7qxkd3ami6f_zQ==/com.example.mobile-WN4rRCxbP9Pu00JRJ5XLpA==/base.apk ??? ???
150994944  32.70% 100.00%       36                e5d7a1e4 /apex/com.android.runtime/lib/bionic/libc.so ??? ???
      864   0.00%   0.00%       36 [!HERE!]->      b89dc293 /data/app/~~Gc8PoEgh7qxkd3ami6f_zQ==/com.example.mobile-WN4rRCxbP9Pu00JRJ5XLpA==/base.apk ??? ???
      864   0.00% 100.00%       36                  e5d7a1e4 /apex/com.android.runtime/lib/bionic/libc.so ??? ???

如您所见,关键部分不是任何so文件,而是apk本身。我不知道那是什么意思。因此,无法定位内存泄漏的位置。

4

0 回答 0