6-内存

("▔□▔)~这是一个很敏感的值~最近几年说起安卓机配置,先别管CPU是啥,普通机型的内存没有3G起步都不好意思卖~旗舰机内存不是4G起步的都不好意思宣传,然而,各种app占用的内存也是越来越大~总的来说,当一个对象持有Activity的引用,假如该对象使用后不能被系统回收,便出现了内存泄漏的情况。不那么高大上的内存泄漏也包括Activity启动模式设置的不合理.比如可以通过特殊操作,无线重复开启多次某个界面,多循环几次类似操作,内存就会被占用的越来越多了~

我们如果只看数据找BUG,测试起来还是很轻松的.最简单的方法:点击菜单键,我们就能看到剩余的内存量,通过配合各种场景模拟,然后看看剩余内存就能取一个大概值了~

-----测试要严谨的分割线-----

怎么可以真的如此这般(╯‵□′)╯ノ┻━┻☆冒个烟还凑合~

 

上面那个不太好的例子,取出值的可依据性较低,毕竟按照安卓app的尿性,不知不觉可能已经有很多app后台自启,并且在干扰你的数据了~

所以推荐一个取值命令,针对单一程序包进行内存取值,这个数据的可依据性就很高了:

adb shell dumpsys meminfo package

我们需要关注的是TOTAL的第一个值,单位是kb.

 

 

 

然后,就是老样子,模拟各种使用场景进行长时间操作,操作期间取值查看内存使用情况.如果内存长期在一个可控的范围内波动那么可以算是没问题.

当然也需要跟老版本进行对比,如果某些操作的内存波动范围有明显变化,那么就值得好好探讨一下了~

 

如果发现某场景数据异常,那么首先要沏茶一壶,再找个舒服的凳子,然后来到程序猿旁边,最后心平气静的问他你在这块代码里都干啥了?

-----华丽的吐槽线-----

((╯‵□′)╯︵┻━┻  鬼知道程序猿们会写出什么BUG)

 

 

posted @ 2016-12-23 17:21  店*小二  阅读(123)  评论(0编辑  收藏  举报