我对这个关于Android操作系统的内存管理的问题很好奇,所以我希望对这个主题有一个非常详细的答案.
我想知道的是:
最重要的是:
到目前为止我所听到的(直到2013年):
是什么让我很好奇:
这两个限制都非常低.
我刚刚下载了Android任务管理器来检查我的设备RAM.我注意到有些应用程序使用大约40-50兆字节的RAM,这比上面提到的最大RAM使用量(比如说32 MB)要多得多.那么Android如何确定应用程序可以使用多少RAM?应用程序如何超出此限制?
此外,我注意到当使用大约30-40兆字节时,我的一些应用程序崩溃(被系统杀死?)和OutOfMemoryException.另一方面,我的手机上运行的应用程序使用100 MB以上的一段时间后(可能由于内存泄漏)不会崩溃或被杀死.因此,在确定可以节省多少RAM时,显然还取决于应用程序本身.这怎么可能?(我用带有768 MB RAM的HTC One S进行了测试)
免责声明:我不以任何方式与Android任务管理器应用程序相关联.
memory android memory-management out-of-memory android-memory
我正在开发一个需要大量(~25万字词典)的安卓文字游戏应用程序.我需要:
编辑:查询通常会问"在字典中吗?".我想在这个单词中支持最多两个通配符,但这很容易,只需生成通配符可能存在的所有可能的字母并检查生成的单词(即26*26查找带有两个通配符的单词) .
我的第一次天真尝试使用了Java的HashMap类,这导致了内存不足异常.我已经研究过使用android上可用的SQL lite数据库,但这看起来有些过分.
做我需要的好方法是什么?