WebView에서 JavaScript debugging하기

Google의 Open Source를 보면 쓸만한거 투성이다. 그런데 Google의 특성상 대개 웹 프로그래밍을 해야하는 것이다.
자.. 그렇다면 그것을 Cocoa 프로그램에서 쓰려면 여러가지 방법이 있겠는데, 그 중 WebKit의 WebView에 HTML을 로딩해서 이용하령하는 것이 가장 간단한 경우가 될 것이다. 그런데 그럴 경우, 로딩되는 HTML과 그 안의 JavaScript는 어떻게 디버깅을 할 것인가?

그냥 순수하게 JavaScript만으로 되면, 그냥 Safari나 Firefox등 웹 브라우저에 로딩해서 거기서 디버깅하면 된다. 하지만 Cocoa 프로그램으로써, HTML과 JavaScript의 특정 부분들이 C/Objective-C 코드에 의해서 정해진다면, 직접 WebView에 로딩을 해서 디버깅할 수있어야 한다. 그럼 어떻게 할까?

다음을 Terminal에서 입력하면 된다.

defaults write <ID for your app> WebKitDeveloperExtras -bool true

예를 들자면 다음과 같이 한다.

defaults write com.greenleaves.SavePaper WebKitDeveloperExtras -bool true

혹은 Objective-C의 소스에서 하고자 하면, 프로그램이 뜨는 시점 중 가장 이른 시점에 하면 된다고 한다.

즉 +initialize와 같은 method에서 다음과 같이 한다.

[[NSUserDefaults standarduserDefaults] registerDefaults:[NSDictionary dictionaryWithObject:
[NSNumber numberWithBool:YES] forKey:@"WebKitDeveloperExtras"]];

자 그러면 Web Inspector를 WebView에서 보려면, WebView에서 right-mouse button click을 하면, “Inspect Element” 메뉴 아이템이 나오는데 그걸 선택하면 된다.

WebView에 HTML이 로딩되었을 때

Leave a Reply

Please log in using one of these methods to post your comment:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: