12

在 Android Studio Profiler 中,有两个地方显示应用程序占用的原生内存大小。

在此处输入图像描述

第一位是在单杠中。Profiler文档将其描述为:“Native:来自 C 或 C++ 代码分配的对象的内存”。

第二位是应用堆转储,Native Size 列。在文档中描述为:“本机大小:此对象类型使用的本机内存总量(以字节为单位)”

在我的情况下,水平条显示 30.12 MB,堆转储“本机大小”列显示大约 9.28 MB(这是应用程序堆中具有非零本机大小列的所有对象的总和)

为什么这两种尺寸不同?

4

1 回答 1

1

对于“水平条”,如果您仔细观察,您会发现图形使用的内存大小为 0。原因是在某些设备上,位图和其他图形资源是在本机内存中处理的。因此,除了 9.28mb 之外的额外内存很可能是这些图形资源。

于 2020-09-09T16:47:52.827 回答