【问题标题】:Memory/RAM usage on different devices with same app具有相同应用程序的不同设备上的内存/RAM使用情况
【发布时间】:2011-12-27 17:40:50
【问题描述】:

我用 cocos2d-android 做了一个安卓游戏。

当我在不同的设备上测试这个游戏时,RAM 的使用是不同的:

三星 Galaxy Note (2.3.5):

  • 任务管理器显示:约 17MB
  • 看门狗:约 23MB
  • 调试:大约 10MB (Debug.getNativeHeapAllocatedSize() / 1048576L)

三星 Galaxy I9000 (2.3.3):

  • 任务管理器:大约 55MB
  • 看门狗:大约 42MB
  • 调试:大约 25MB

模拟器(2.3.3 && 3.2):

  • 调试:大约 40MB

我不知道为什么同一游戏的不同设备上的内存消耗会如此不同。有人回答吗?

【问题讨论】:

  • 堆大小有何不同? Java 只会在它认为有必要时清除内存。

标签: android memory ram device


【解决方案1】:

这些设备中的每一个都运行不同版本的 Android,并且可能在后台运行不同类型的软件。

如果您没有遇到任何问题,并且您的用户没有抱怨 - 我看不出有什么可担心的。

【讨论】:

    【解决方案2】:

    三星 Galaxy I9000 的堆大小为 64MB。 Galaxy Note 的堆大小为 128MB。在模拟器中,默认堆大小为 24MB,但当然您可以选择任何大小。

    我仍然不知道为什么 ram 的使用有那么大的不同,但这似乎与我用于游戏的位图有关。在最新版本中,我为低端设备添加了低分辨率位图。如果我打开 I9000 上的低分辨率位图,内存使用量会急剧下降。如果我在 Galaxy Note 上使用低分辨率位图开始游戏,则内存使用量减少的幅度要小得多,但游戏在具有 sd 和 hd 图形的设备上运行流畅,并且在 android 市场上的用户反馈也是积极的。

    【讨论】:

      猜你喜欢
      • 2016-01-25
      • 1970-01-01
      • 1970-01-01
      • 2015-03-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多