测试描述
项目合成了思必驰的语音项目,测试在测试的过程中发觉app置于后台一段时间后,再切换回前台,就会出现语音图标点击没有反应,然后崩溃....
猜测
我开始猜测会不会是由于哪里出现了死循环导致点击没有反应最后崩溃,但是又想如果死循环的话应该整个页面都是卡死的,不应该只有整个按钮点击了没有反应。。。头都想大了,还是想如何才会操作出这样的场景
调试
反复重复测试的描述步棸,我发觉app至于后台一段时间后返回,界面会有卡顿,立马通过memory
查看,果不其然内存有问题:

图片.png
于是直接运行查看memory
,发觉会不停的增长,经过一系列代码的分析终于找到内存增长的代码。
于是就想随他涨,看看涨到多少会调用applicationDidReceiveMemoryWarning
,很不幸,尝试了很多次,才调用这个地方,而且很不稳定,有时候memory
已经很大了达到200M以上了还每调用
接下来,又开始反复重复测试的步骤,发觉当调用applicationDidReceiveMemoryWarning
的时候,切换回前台, 那个按钮点击是必然会出现上诉情况,只是按钮方法是响应的,UI并没有