升级到xcode 6后,我发现在iOS模拟器下运行我的应用程序时,无论我选择iPhone还是iPad,在iOS 8下运行都非常缓慢。但如果我选择在iOS 7下运行,则正常运行。
我认为这是一个与应用程序/编码相关的问题,所以我尝试将其部署在我的iOS8 iPad上,奇怪的是,应用程序正常运行,不像模拟器那样缓慢。
有没有人在SO上遇到过这个问题?
确保在 iOS 模拟器的“调试”选项卡下未选择“慢速动画”。这对我解决了问题。可能是意外打开的。
如果你在选择模拟器时按下⌘T,它将开启“慢速动画”,使所有内容都变慢。⌘T通常用于打开新的浏览器标签页,所以请确保你选择的是浏览器而不是模拟器。
iOS模拟器的性能不会与设备上的性能相匹配。iOS模拟器是用于快速原型设计和快速迭代的工具。性能调优需要在真实设备上进行。
在iOS模拟器中运行的进程基本上是在特殊构建的运行时内运行的OS X进程,以便表现得像iOS而不是OS X。在过去的四年中,这已经从基本上是UIKit和类似的iOS框架构建在OS X框架之上,发展到现在拥有自己的引导服务器(自iOS 7起),自己的dyld(自iOS 8起),并且仅共享主机内核和非常低级别的系统库(从iOS 7起为libSystem,并且只是libSystem的pthread、syscalls和平台子库,从iOS 8起)。
当您在未启动当前设备的设备上测试应用程序时,我们关闭该设备并启动新设备,这个过程可能需要10秒钟到1-2分钟,主要取决于您的磁盘I/O带宽以及您的系统上的其他任务需求。
如果您在已经启动一段时间且没有任何明显后台任务正在运行(编译、rsync等)的sim设备上看到主要性能问题,请进行sysdiagnose,并查看旋转转储中的模拟器进程和fs_usage,以了解可能正在发生的情况。
性能模拟和设备是两回事。我认为你不应该关注它。这个错误可以优化苹果。