1.5 案例:优化dex相关内存
上一节提到,随着代码功能的增加,代码复杂度也在不断地变大,这时我们往往会发现Dalvik Other和Dex Mmap这两部分消耗的内存也在不断增加。在之前的例子里,我们知道这两部分的内存已经接近总内存的一半。在Dalvik Heap已经充分优化的情况下,我们有必要继续研究这部分内存如何优化。
我们已经知道Dalvik Other存放的是类的数据结构及关系,而Dex Mmap是类函数的代码和常量。通常情况下,要减少这部分内存,需要从代码出发,精简无用代码,或者将功能插件化。但如果我们深入理解了系统,也能够找到一些其他方法来降低这部分的内存消耗。