Titanium SDK 版本:1.7.0 iPhone SDK 版本:4.2
我正在开发一个 iOS 应用程序,我监控每个窗口的内存使用情况,并且每个屏幕的内存使用情况都在不断减少。
一般是什么消耗内存?我使用视图、表格和 XHR 数据。
如何释放内存/减少每个窗口的使用量?
感谢所有输入!
Titanium SDK 版本:1.7.0 iPhone SDK 版本:4.2
我正在开发一个 iOS 应用程序,我监控每个窗口的内存使用情况,并且每个屏幕的内存使用情况都在不断减少。
一般是什么消耗内存?我使用视图、表格和 XHR 数据。
如何释放内存/减少每个窗口的使用量?
感谢所有输入!
确保关闭未使用的窗口并清除我们对应用程序中不再需要的本机对象的任何引用。
// create a window object
var aWindow = Ti.UI.createWindow();
var aLabel = Ti.UI.createLabel({ text : "Hey" });
aWindow.add(aLabel);
aWindow.open();
// done with window
aWindow.close();
aWindow = null;
aLabel.null;
查看Appcelerator Codestrong 会议上的此演示文稿以了解更多详细信息。
考虑到您正在处理将 JavaScript 转换为 Objective-C 并且在不使用模块的情况下不一定能编写本机解决方案,您可以从将窗口变量设置为null
( myJsWindowVar = null;
)开始,或使用delete
( delete myJsWindowVar;
)删除这些变量。就我个人而言,我认为将变量设置为null
将更好地转化为建议的 Objective-C 最佳实践,即设置指针引用null
并防止孤立对象徘徊。