2012-04-19 44 views
3

因此,我正在测试我的应用程序,并且我的控制台每隔一段时间就会收到一条关于接收内存警告的消息,然后是应用程序崩溃。我正在通过Xcode在我的iPad上进行测试。在通过Xcode进行测试时接收内存警告+崩溃,但不是单独在设备上进行测试?

但是,当我尝试在设备上单独复制错误(在没有Xcode的情况下运行应用程序)时,我无法使应用程序崩溃。这是怎么回事?使用Xcode进行测试时,该应用程序似乎更容易出错。

谢谢

+0

什么是确切的错误信息?崩溃发生时,堆栈跟踪是什么样的? – user1118321 2012-04-19 04:32:37

+4

如果这是一个内存警告,那么我猜测运行它的所有XCode调试东西都会消耗足够的内存以供用完。也许尝试在'Release'模式下运行而不是通过XCode'Debug'来查看是否是这种情况? – numegil 2012-04-19 04:33:29

回答

1

我确实有同样的问题,因为你已经描述过。 然后我检查了我的代码并及时发布了分配的对象。 到时候我已经运行代码而不会崩溃我的应用程序。

这似乎是你肯定有代码内存泄漏一样,当你分配任何数组或类似

NSMutableArray *myarray=[NSMutableArray alloc] init]; 你必须将其释放。或者自动释放它。 或有时你可以写

if(myarray) 
    { 
     [myarray release]; 
     myarray=nil; 
    } 
    myarray=[NSMutableArray alloc] init]; 
2

有一个提示你应该尝试:在运行方案,诊断部禁止僵尸对象。通常,启用僵尸对象后,即使释放后这些对象仍然在内存中。

相关问题