gpt4 book ai didi

iPhone 应用程序因内存不足而崩溃,但在模拟器中运行良好

转载 作者:行者123 更新时间:2023-12-02 03:36:48 27 4
gpt4 key购买 nike

亲爱的,我有一个基于导航的应用程序,大约有 60 个 UIControllerView,它分为 4 个部分。

我已经运行了以下内容: 1. 构建和分析:bulid 成功,没有任何提示。 2、仪器配置及泄漏情况:无泄漏。

但是,该应用程序在 iPhone 或 iPad 中崩溃,但在模拟器中运行良好。没有崩溃报告,但我确实在 crashreporter 文件夹中看到了 LowMemory.log。

我已将我的 iPhone 和 iPad 升级到 4.2

有人知道可能出了什么问题吗?我已经阅读和排除故障一周了。

是否需要删除/释放 UIControllerViews?只需在 View 之间导航,应用程序就会崩溃。

感谢您的帮助。

我的应用有一个名为 contentViewController 的 Root View ,用户可以从这里导航到 4 个测验。

这是我用来返回 Root View 的代码。

- (void)goHome {
UIAlertView *alert = [[UIAlertView alloc]
initWithTitle: @"Warning"
message: @"Proceed?"
delegate: self
cancelButtonTitle:@"Yes"
otherButtonTitles:@"No",nil];
[alert show];
[alert release];

}

- (void)alertView:(UIAlertView *)alertView didDismissWithButtonIndex:(NSInteger)buttonIndex {
[[self navigationController] setNavigationBarHidden:NO animated:YES];
if (buttonIndex == 0) {
NSArray * subviews = [self.view subviews];
[subviews makeObjectsPerformSelector:@selector(removeFromSuperview)];
self.view = nil;
if (self.contentViewController == nil)
{
ContentViewController *aViewController = [[ContentViewController alloc]
initWithNibName:@"ContentViewController" bundle:[NSBundle mainBundle]];
self.contentViewController = aViewController;
[aViewController release];
}
[self.navigationController pushViewController:self.contentViewController animated:YES];
}
else {
}

}

最佳答案

模拟器不会为您提供有关内存警告的任何有用信息 - 您的应用程序在其中运行,可以有效地访问系统愿意提供给它的所有内存。该设备是您需要测试内存使用情况的地方,如果您收到警告和崩溃,那么您需要执行一些 Instruments 工作来找出可以在哪里释放一些内存。

关于iPhone 应用程序因内存不足而崩溃,但在模拟器中运行良好,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4281713/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com