【问题标题】:How to specify more than 64 mb memory for an application?如何为应用程序指定超过 64 mb 的内存?
【发布时间】:2018-08-06 23:59:40
【问题描述】:

largeHeapSize = true 将堆大小增加到 64 mb。但我的应用程序需要超过 64 mb 的内存。我已经搜索并没有找到任何解决方案。我在 android 开发者网站上有 this。这适用于我的情况还是更合适?

【问题讨论】:

    标签: java android heap-memory android-memory heap-size


    【解决方案1】:

    largeHeap = "true" 不会将堆大小增加到或增加 64 MB:

    大多数应用不应该需要这个,而是应该专注于减少整体内存使用以提高性能。 启用此功能也不能保证可用内存的固定增加,因为某些设备受到其总可用内存的限制。source,强调我的)。

    这意味着使用 largeHeap 标志只会告诉 Android 您的应用是内存密集型的并且需要更大的堆。在某些设备上,这意味着它可以获得 200-300 MB,而在其他设备上则为 50 MB。这取决于可用内存。

    另外,你的应用获得的内存是由系统决定的,所以你不能手动设置。 Android 上没有 Xmx 标志或类似标志。 `

    TL;DR:您不能像在桌面 Java 上那样指定特定的堆大小。使用largeHeap 不会为您的应用程序提供固定数量的内存;这取决于设备和可用内存。并且尽可能节省内存,而不是像largeHeap 的文档所说的那样请求更多内存 (Most apps should not need this and should instead focus on reducing their overall memory usage for improved performance)

    【讨论】:

      猜你喜欢
      • 2011-05-06
      • 2010-12-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-11-09
      • 1970-01-01
      • 2012-01-30
      相关资源
      最近更新 更多