2

问题是我的应用程序将数百兆字节保存到他们 iPhone 上的用户文档目录中。在测试期间,iPhone 模拟器需要很长时间才能在每次构建时启动应用程序,因为每次构建时它都会将所有这些数据复制到新的文档目录中。是否有任何解决方案可以每次将目录留在同一位置或以某种方式加速启动?例如,具有 HEX 值的导向器会更改 iPhone 模拟器上的每次重建/重新启动,这可能非常耗时:

./Library/Application Support/iPhone Simulator/User/Applications/B32A0BA1-5843-4FDE-B5FB-4E40460BD8CC/Documents/

谢谢,

马特

4

4 回答 4

11

模拟器(与设备本身不同)不必保留在沙盒位置。

因此,从模拟器中保存文件时,您可以尝试:

#if TARGET_IPHONE_SIMULATOR

// save your files to a fixed location on your hard-disk
// (like /Users/yourusername/MyIPhoneAppDebugStorage)

#else

// Save files normally
// (to [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,
//     NSUserDomainMask, YES) objectAtIndex:0])

#endif

这样,当从模拟器运行时,您的大文件始终位于硬盘上的固定位置。

于 2009-06-02T22:53:56.317 回答
2

在第一次运行后让模拟器保持打开状态。只需在 XCode 中停止程序而不关闭模拟器。因此,在下一次测试启动中,它只需要加载应用程序而无需再次加载模拟器。

这对我来说真的加快了速度。

于 2011-05-24T09:21:19.193 回答
0

为了缩短构建时间,最简单的方法可能是创建一个包含合理数据子集的新 XCode 目标。假设这些数据文件是 XCode 项目中的“资源”文件,您可以复制您的应用程序目标,将其重命名为“app lite”或类似名称,然后编辑“复制资源”构建阶段以不包含所有文件(或单个较小的文件,或其他)。

于 2009-06-02T21:22:28.513 回答
0

XCode 不会在每次构建和运行时创建新目录,它只是重命名旧目录。

我有数据存储在文档目录中,并且每次启动时都存储在其中,除非我在运行我的应用程序之前明确删除它。

我很好奇启动模拟器时花费的时间。你可以通过应用程序调试吗?(是你的代码花时间吗?)

克里斯。

于 2009-06-02T21:26:04.183 回答