我猜Dalvik堆在Android应用程序中是固定的,例如64MB、96MB等。对吗?Android为应用程序提出了特定的值作为限制,基于Android版本(ActivityManager类的getMemoryClass() API将为您提供代码运行设备的值),但厂商会调整它以增加一定的空间以满足其要求(例如在支持更高屏幕分辨率的硬件情况下,更大的分辨率将使用更大的位图)。如果是这样,本地堆也是固定大小的吗?还是会根据应用程序的使用而增长?是的,它没有硬性限制,它会根据使用情况而增长。你可以使用设备可用的所有内存(即总内存-其他程序使用的内存)。当Android认为内存不足时,它会基于许多因素(是否在前台或为某些前台应用程序提供服务)开始终止进程。您可以使用android.app.ActivityManager.MemoryInfo获取有关设备内存的更多信息。自Android 3.0以来,应用程序可以请求更大的堆(尽管除非完全避免不可避免,否则应该避免它)。您可以通过在清单文件中使用android:largeheap="true"来增加堆大小。