我如何测试使用Xcode的iPhone模拟器

问题描述:

永久记忆保存到永久记忆,像这样的定制的NSMutableArray对象:我如何测试使用Xcode的iPhone模拟器

- (void)applicationDidEnterBackground:(UIApplication *)application 
{ 
     [NSKeyedArchiver archiveRootObject:[PlayerMenuController savedPlayers] toFile:@"/Users/Dec/Library/Application Support/iPhone Simulator/6.0/Applications/9BC31B2A-/savedPlayers"]; 
} 

哪些是如下所示调用,那么测试:

NSMutableArray *loadedArray = [NSKeyedUnarchiver unarchiveObjectWithFile:@"/Users/Dec/Library/Application Support/iPhone Simulator/6.0/Applications/9BC31B2A-/savedPlayers"]; 
if (loadedArray != nil) 
{ 
    [[PlayerMenuController savedPlayers] setArray:loadedArray]; 
} 


for (int i = 0; i < [[PlayerMenuController savedPlayers] count]; i++) 
{ 
    Player *p = [[PlayerMenuController savedPlayers] objectAtIndex:i]; 
    NSLog(@"%@ %u",[p getName],[p getSaveId]); 
} 
NSLog(@"%u",[[PlayerMenuController savedPlayers] count]); 

为了测试这个,我打开我的应用程序,将一些对象保存到数组中,最小化应用程序,然后通过任务管理器/双击家来关闭应用程序。当我再次打开我的应用程序时,它显示调试器已分离,我的断点或NSLog都没有被调用。

如何在多种用途上调试我的应用程序,以便测试我的应用程序保存和加载数据的能力?

只需通过XCode在调试模式下运行应用程序。不要通过点击模拟器上的应用程序图标来运行它。如果您不更改代码,则不会重新生成。你将拥有相同的包和设置。

此外,按XCode中的停止按钮停止应用程序,而不是在模拟器中关闭它。

+0

这样做不会调用applicationDidEnterBackground。 – Deco 2013-04-11 16:16:32

+1

只需按主页按钮即可触发'applicationDidEnterBackground'。通过双击主页按钮并关闭应用程序使用停止按钮。 – 2013-04-11 16:31:55

你可以看一下在仿真器上的“内容”:

~/Library/Application Support/iPhone Simulator/

然后,你将不得不进入他们每个人去猜测你的应用程序目录。然后看下Documents文件夹。你的plist应该在那里。