轉自:http://www.tuicool.com/articles/ZBFnUbz
使用safari對webview進行調試
在web開發的過程中,抓包、調試頁面樣式、查看請求頭是很常用的技巧。其實在iOS開發中,這些技巧也能用(無論是模擬器還是真機),不過我們需要用到mac自帶的瀏覽器Safari。所以,本文將講解如何使用Safari對iOS程序中的webview進行調試。
正文:
1. 打開模擬器(真機)的開發者模式
【設置】->【Safari】->【高級】->【Web檢查器】打開
2. 打開Mac上Safari的開發者模式
【Safari】->【偏好設置】->【高級】->【在菜單欄中顯示“開發”菜單】勾選
3. 寫一個webview並加載一個網頁
#import "ViewController.h" @interfaceViewController () @property (strong, nonatomic) UIWebView *webView; @end @implementation ViewController - (void)viewDidLoad { [superviewDidLoad]; // Do any additional setup after loading the view, typically from a nib. _webView = [[UIWebViewalloc] initWithFrame:self.view.bounds]; [_webView loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:@"http://www.baidu.com"]]]; [self.view addSubview:_webView]; } @end
4. 在模擬器(真機)中打開webview應用,並打開Safari查看網絡信息
【開發】->【iOS Simulator】->【正在調試的網站】
注意:必須要webview在加載網頁時,打開Safari才可以看到調試模式。
在彈出的調試窗口中,可以看到當前正在加載網頁的各種信息,包括源碼、請求頭、圖片、加載的資源與腳本、控制台輸出等。並且它和web前端的調試方式相同,你可以直接修改網頁的CSS樣式,對網頁布局等進行修改,而不用重新運行整個App。
5. 修改web樣式
將光標選中到要修改的樣式,進行修改后,可以直接在模擬器中看到修改后的效果。
當然,webview的調試技巧還有很多,比如 Charles 工具等。感興趣的小伙伴可以多研究下。
使用Chrome DevTool調試iOS設備的webView簡介(http://www.jianshu.com/p/19c18c924f91)
之前調試iOS設備的webView都只能使用Safari web inspector(可以google搜索safari ios debug)。但是Safari的inspector用起來實在沒有Chrome的DevTool順手。
今天從v2ex的這個帖子里看到了iOS WebKit Debug Proxy,終於解決了這個問題。
先放張使用效果圖

使用
iOS WebKit Debug Proxy的原理是在本地起了一個代理做WebInspector到WebKit遠程調試的協議轉發。安裝使用的過程很簡單,但是因為牆的存在所以要做一些設置以方便使用。本文只介紹在Mac OS X下的安裝設置。
安裝
- 使用brew直接安裝
brew install ios-webkit-debug-proxy
連接設備
- 模擬器需要在使用proxy之前啟動
- 真機只需要USB連接好即可
啟動proxy
- 在terminal中執行
ios_webkit_debug_proxy -f chrome-devtools://devtools/bundled/inspector.html
-f 參數直接指定使用chrome的devtools作前端。否則需要翻牆后才能調試設備。
在Chrome中打開頁面
- 在chrome中打開 localhost:9221 ,可以看到當前已連接的設備列表。
如果此時看不到模擬器,請檢查
/etc/hosts
文件是否有一行::1 localhost
,以確保WebInspector監聽ipv4協議

-
點擊設備后可以打開新的設備頁面
默認每個設備的端口號+1,9222/9223/...
-
可能會見到提示說
Note: Your browser may block1,2
the above links with JavaScript console error:
Not allowed to load local resource: chrome-devtools://...
To open a link: right-click on the link (control-click on Mac), 'Copy Link Address', and paste it into address bar.
按提示復制右鍵復制鏈接地址在地址欄中打開就可以愉快的使用chrome的dev tool來調試webView啦。
原文鏈接:http://www.jianshu.com/p/19c18c924f91
著作權歸作者所有,轉載請聯系作者獲得授權,並標注“簡書作者”。