如何在iOS上识别Safari崩溃的原因?

24

我们有一个非常JavaScript密集的Web应用程序 - 在谷歌地图上有许多自定义标记,并且页面上可能有很多项。

间歇性和不可预测地,在iOS上的Safari会出现“发生了问题,因此重新加载了此网页”的错误。

大多数情况下,这是在照片被浏览器输入并调整大小之后发生的 - 尚未进行上传。

在研究潜在问题时,我找到了以下链接

  1. https://discussions.apple.com/thread/6707626?tstart=0
  2. https://www.quora.com/When-Safari-says-A-problem-occurred-with-this-webpage-so-it-was-reloaded-what-sort-of-problem-has-likely-occurred

真正的问题是如何确定崩溃的原因?这在桌面电脑上从未发生过,因此确定它是iOS限制、内存问题、调整大小问题还是其他原因都非常困难。

我已经连接了iPhone到Mac上,在手机上运行Web检查器,但是这个崩溃会终止整个流程,没有记录任何错误,因此也没有帮助。

此外,没有可靠的方法来重现问题 - 它只是偶尔发生,没有一致的特征可以确定原因可能是什么。

提前致谢。


1
如果是一个Web应用程序,没有任何上下文的话,我可以告诉你检查几件事情:检查是否超过了某些连接数,内存泄漏(RAM),由于内存泄漏或转换中的错误而导致的GPU崩溃。 - Martin Chaov
正如Wallace所建议的,您可以尝试使用sentry.io。我想它在第一个月是免费的。否则,我建议优化执行时间并在Chrome的性能选项卡中检查您的函数并记录配置文件。 - Robin
3
可能是如何确定移动版Safari崩溃的原因?的重复问题。 - ColorCodin
它在另一个浏览器上能用吗?如果可以,那么与 Safari 相关的与您的项目有关的不同之处是什么? - Simon Hyll
尝试反转你的问题 - 例如,为什么我的代码在桌面上运行?在桌面上,您有更多的范围来对您的代码进行分析和跟踪。您可能会不幸地在浏览器中遇到移动特定的错误,但是在桌面上查找资源使用情况和错误行为可能会帮助您识别可能会影响移动设备受限资源的领域。仅仅因为它在桌面上“工作”,并不意味着您没有像漏斗一样泄漏资源;-) - Dave Meehan
你很可能会遇到“内存不足”的情况。 - Juraj Antas
1个回答

1

你尝试过这个吗?:

  1. 将您的手机连接到Mac
  2. 启动Xcode
  3. 打开Window->Organizer->Devices tab->Console,查看在重现问题时是否有错误。

1
一旦设备显示出无用的消息,它就会自动关闭,因此它无法正常工作。 - n1ru4l

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