【发布时间】:2019-03-23 01:58:46
【问题描述】:
我对编程比较陌生,并且正在构建一个用于练习/娱乐的应用程序,但我无法理解 Android 中的内存使用情况(即使经过 12 小时的研究)。我使用 Google 地图创建了一个 Android 应用,但注意到即使在强制垃圾收集和检查内存泄漏之后,Android Studio 的内存分析器仍显示出很高的内存使用率(总共大约 90-120MB)。
我很困惑。多个网站声明每个 Android 应用程序都分配了有限的内存量。我读过旧设备倾向于分配 16MB,而新设备倾向于分配 32MB(取决于屏幕尺寸/分辨率)。
- 这个内存使用有问题吗(Android Studio 上大约 100 MB 内存分析器)?
- 谁能解释一下应用程序的内存 限制(上面提到的 16/32MB 限制)与显示的内容有关 Android 的内存分析器?
- 当我运行 来自 Android Studio 的应用程序(也许我正在开发 b/c)?
- 内存限制是否只适用于不能被垃圾回收的东西?
- 内存限制是否不适用于 Google 地图片段(因为 Google 运行 Android)?
根据我的阅读,分析器可以显示与应用程序不直接相关的内存使用情况,但这似乎无法解释分配内存限制与分析器显示的内容之间的差异。
当我试图进一步了解差异的来源时,我发现 Google 的开源圣诞老人追踪器应用程序显示大约 90MB 的内存使用量。我倾向于认为这是正常的内存使用量,可能是因为该应用使用了 Google 地图。
【问题讨论】:
标签: android google-maps memory