我有以下基本的钛合金应用:
INDEX.XML
<Alloy>
<Window class="container">
<Label id="label" onClick="doClick">Hello, World</Label>
</Window>
</Alloy>
index.js
function doClick(e) {
Alloy.createController('foo', {}).getView().open();
}
$.index.open();
foo.xml
<Alloy>
<Window>
<View class="container">
<Label id="label">Some text in the foo controller!</Label>
</View>
</Window>
</Alloy>
foo.js
$.foo.addEventListener('close', function () {
$.destroy();
$.off();
});
然后我根据此处提供的说明监控Android模拟器使用DDMS的内存量:http://docs.appcelerator.com/platform/latest/#!/guide/Managing_Memory_and_Finding_Leaks
当应用程序启动时,对象的数量为: 32,188
单击按钮,然后按后退关闭新窗口,然后单击“导致GC”,对象数增加到: 32,332
我再次这样做,它增加到: 32,478
打开并关闭窗口大约8次,然后增加到: 34,481
等等。
为什么会出现这种情况,如何修复此内存泄漏?