iPhone模拟器突然变得运行非常缓慢

340

我在 iPhone 模拟器上开发一个应用已经几周了,一直运行良好,但突然之间加载内容和动画都变得非常缓慢。自上次成功测试以来,我没有对代码进行任何更改。

我尝试重新启动模拟器(多次)并删除应用程序,进行完全的清洁重构,但没有成功。同时,在模拟器运行时通过监视器检查我的 CPU 使用情况,使用量仅约为 30%,内存使用量为 40%。

我充分理解模拟器永远不如设备本身快,但它突然开始变慢似乎有些奇怪,慢的意思是原来速度的四分之一以下。


9
你连续按了三次Shift键了吗? - Rey Gonzales
1
很难知道我做了什么,我该怎么办?这是否与慢动画切换相同?如果是,我已经尝试了几次切换,但没有任何运气。 - Finglish
再次按下Shift键三次。是的,它还是一样的。 - Rey Gonzales
98
按下 CMD + T 可以切换减速模式。 - Dominic
你应该将下面的答案标记为正确答案。 - Finn
显示剩余3条评论
14个回答

2
这不仅仅是关于动画缓慢的问题。Xcode模拟器在全局范围内的性能非常低,这是苹果的一个错误。我已经通过反馈助手报告了此问题。我创建了演示代码来证明模拟器比任何旧的真实设备慢200倍。我发现在WKWebView中执行Date对象的JavaScript代码对模拟器来说是一种痛苦。在我的情况下,更改模拟器选项并没有帮助。请参见jsfiddle https://jsfiddle.net/kjms16cw/。我希望苹果能尽快解决这个问题!

var log = document.getElementById("log");
document.getElementById("button").onclick = function() { run(); };

function run() {
 var d1 = new Date();
 for (var i = 0; i < 1000; i++) {
  var x = new Date();
  x.setMilliseconds(0);
  x.setSeconds(0);
  x.setMinutes(0);
 }
 var d2 = new Date();
 log.innerHTML = ((d2.getTime() - d1.getTime()) / 1000) + " seconds";
}
<h3>Xcode Simulator Extremely Low Performance</h3>
<p>This test runs fast (several tens milliseconds e.g. 30 ms)
in any browser any device any platform including very old iOS device
e.g. iPhone 5C and several years old iPad 2, BUT IN SIMULATOR IT TAKES 6000 ms 
(yes, 6 seconds!). Terrible!</p>
<button id="button">run()</button>
<div id="log"></div>


更新:Apple 没有回复我的 Apple 反馈票 Jan 7, 2020 at 10:30 AM – FB7523875(我无法提供链接,因为包括非安全漏洞在内的任何漏洞都不可见 - 这是 Apple 的可怕政策 - 没有人知道有多少漏洞已经报告但未解决),但我刚刚在 Xcode v12.0.0 (12A7209) 中测试了这个 bug,问题已经被解决了!现在这个测试在模拟器中运行得非常快,就像在真实的 iOS 设备中一样。 - mikep

1
您可以尝试关闭远程调试(Cmd-D -> 停止远程JS调试),这通常会加快速度。

0

当 Chrome 调试处于活动状态,且浏览器标签页未在前台时,仿真器也会变慢。所以我决定将指南放在前台。


0

前往模拟器菜单 设备 -> 重新启动

然后一切都比你想象的快 -_-


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接