HTML、JS、CSS的Web三件套,时下占据了项目的主要业务部分,原生和JS的交互必不可少,下面总结iOS调试Webview的两种方法:
一、Safair浏览器调试方法
1.在手机设置里,找到Safair浏览器,在高级里启用Web检查器;
2.Mac上Safair浏览器,在偏好设置高级选项底部勾选“在菜单栏中显示开发菜单”;
3.手机连接Xcode工程,操作App跳转到JS页面,点击Mac上的Safair浏览器,在开发选项下拉菜单中,找到手机名称对应的html页面即可进入调试器;
二、Google Chrome浏览器调试方法
( 参考链接 )
1.使用brew安装 ios-webkit-debug-proxy
brew install ios-webkit-debug-proxy
若上面的命令不有效,尝试下面的命令安装
brew uninstall --force libimobiledevice ios-webkit-debug-proxy
brew install --HEAD libimobiledevice ios-webkit-debug-proxy
2.安装成功后,在终端输入下面的命令
ios_webkit_debug_proxy -f chrome-devtools://devtools/bundled/inspector.html
若有问题,报错Could not connect to lockdownd. Exiting.: Permission denied,可输入下面的命令,再次尝试
sudo chmod -R 777 /var/db/lockdown/
3.保持终端命令连接状态,在chrome浏览器中打开 localhost:9221
,点击真机选项;
4.操作App跳转到JS页面,下面两种方式均可进入调试器:
(1)在Mac的chrome中刷新页面,选中要打开的html连接,右键点击“复制链接地址”,新建标签页,在地址栏粘贴地址,按enter键进入;
(2)直接在谷歌浏览器地址栏中输入chrome://inspect/#devices,点击Target下方的inspect进入;
备注:
(1)手机上也要安装谷歌浏览器,否则终端可能无法连接到真机;
(2)复制JS页面地址时,不要用cmd+c快捷键,要右键单击“复制链接地址”,然后新建标签页,粘贴地址打开;
总结:
两种浏览器相比较,虽然Safair调试器打开方便,但容易卡住,有时无法查看JS的变量值,甚至打断点会闪退,建议使用Google Chrome浏览器调试方法。