I’ve worked some days on a web app application, completely written using jQuery, jQuery Mobile and Kendo UI Library.
The application worked successfully on the Android devices but, on Iphone/Ipad crashed unexpectedly.
I’ve tried to investigate the crash logs on the device, with no fortune.
I’ve also connected the device to a mac and tried to debug the web application using the Web Inspector, following these steps http://moduscreate.com/enable-remote-web-inspector-in-ios-6/ , but , when Safari on IOS crashed, the Remote Web Inspector on my Mac was closed too, with no possibility to find what was the latest javascript instruction.
I’ve discovered on the web a great project that enables Chrome debug on Safari for IOS, here is the link:
https://github.com/google/ios-webkit-debug-proxy
You need to install :
- Xcode
- Brew http://mxcl.github.com/homebrew/
- Chrome for Mac
After the proxy installation you need to execute it on your mac using :
ios_webkit_debug_proxy
Start the IOS simulator using XCode:
Connect chrome on your Mac to the address… http://localhost:9221
Choose the device:
Here we are: Chrome web tools debugging Safari!
Network Panel:
Console window:
If Safari crashes… you will be able to see the console message in the web tools window.. this should save a lot of time when you try to find the crash point.
Some tips:
- don’t use web apps inside iframes : Safari on IOS in really unstable
- if you need to use jQuery ready event…. wrap the code inside a function and add a timer and call it after 100-200 ms
- sometimes working on css style overflox-x overflow-y seems to crash Safari
- read the Apple guidelines for web apps:
Hope it helps!
Matteo
No comments:
Post a Comment