如何确定Mobile Safari崩溃的原因?

Jam*_*ood 11 iphone crash mobile-safari

我的网站在Mobile Safari上崩溃,但在桌面上工作正常.

我怎样才能确定它崩溃的原因?

nzs*_*nzs 22

Safari退出意外显示您的网站时可以执行的操作:

1. Safari调试控制台

使用Safari的调试控制台.在iPhone中打开:设置 - > Safari->高级 - >调试控制台=打开.

对我来说它说

  • 第6行上的2个HTML错误 (无法识别键"宽度"的视口参数值"设备宽度"和无法识别键"用户可伸缩"的视口参数值"否".)
  • 2个HTML提示也在第6行.

下次使用Safari检查网页时,将显示调试控制台.

2. Web Inspector(来自iOS 6.0)

如果在网页中发现问题变得越来越复杂,请使用Web Inspector调试Mobile Safari.这是一个很棒的教程.

使用IOS模拟器我发现,对于这个特定的网站,我拥有的所有iOS版本,5.0,5.1和6.1,正确运行页面,但页面崩溃但在设备(iOS 5.0.1)上仍然崩溃.

我的设备在iOS 5上运行,因此我无法访问Web Inspector,但这肯定是您在设备上检查站点并检查计算机上的Web Inspector的下一步.

3.使用iPhone配置实用程序的控制台

您可以下载Apple的iPhone配置实用程序,然后您可以在Safari测试期间访问移动设备的控制台.

检查您的网站我看到几个内存警告,最终导致Safari崩溃.

4A.使用Xcode的调试工具

使用Xcode,您还可以访问设备的控制台(窗口 - >管理器 - >设备选项卡 - >控制台).

您的案例在控制台上报告了以下内容

Apr 30 10:15:18 unknown kernel[0] <Debug>: launchd[2489] Builtin profile: MobileSafari (sandbox)   
Apr 30 10:15:38 unknown MobileSafari[2489] <Warning>: Received memory warning. 
Apr 30 10:15:39 unknown SpringBoard[15] <Warning>: Received memory warning. 
Apr 30 10:15:50 unknown UserEventAgent[12] <Notice>: jetsam: kernel termination snapshot being created 
Apr 30 10:15:50 unknown com.apple.launchd[1] <Notice>: (UIKitApplication:com.apple.mobilephone[0xb2a4]) Exited: Killed: 9
Apr 30 10:15:50 unknown com.apple.launchd[1] <Notice>: (UIKitApplication:com.apple.mobilesafari[0xf755]) Exited: Killed: 9
Apr 30 10:15:50 unknown SpringBoard[15] <Warning>: Application 'Phone' exited abnormally with signal 9: Killed: 9
Apr 30 10:15:50 unknown SpringBoard[15] <Warning>: Application 'Safari' exited abnormally with signal 9: Killed: 9
Apr 30 10:15:52 unknown ReportCrash[2491] <Error>: Saved crashreport to /Library/Logs/CrashReporter/LowMemory-2013-04-30-101552.plist using uid: 0 gid: 0, synthetic_euid: 0 egid: 0
Run Code Online (Sandbox Code Playgroud)

4B.使用Xcode的调试工具Instruments

检查正在发生的事情的另一种复杂方法是​​使用仪器.

再次检查您的站点我看到Safari在退出之前报告了许多低内存警告.遗憾的是,它并不能帮助您发现网站问题,但可能有助于查找Safari开放式错误报告.