如何使用 largeHeap="true" 运行 Android 测试?

don*_*onV 5 testing android heap-memory android-largeheap

我们有一个为平板电脑制作的客户应用程序,我们需要的不仅仅是常规堆,因此我们的应用程序在 AndroidManifest.xml 中为应用程序标记定义了 largeHeap="true" 属性。这很好用。

但是,当我们使用 android.test.InstrumentationTestRunner 和 android.test.ActivityInstrumentationTestCase2 在设备上运行测试时,当我们尝试使用超过标准堆的内存时,我们会收到 java.lang.OutOfMemoryError 错误。

我们尝试在测试项目以及应用程序项目的 AndroidManifest.xml 中设置 largeHeap="true"。

在配置了大堆大小的模拟器上运行测试是可行的。该设置增加了一般最大堆大小,而不是 LargeHeap 的限制。这是一种解决方法,但我们也想在实际设备上运行测试。

有没有办法在具有大堆的设备上运行测试?