1. 밖에서 안으로
당연한 이야기지만
[webView stringByEvaluatingJavaScriptFromString:@"alert('aa')"];
이런게 가능하다.
외부(ex:push notification)로부터 해당 웹뷰 안에다가 Javascript를 실행하게 할 수 있다.
2. 안에서 밖으로
document.location = "iOS:checkParams:" + param1;
javascript 에서 custom protocol (여기선 iOS라는 이름)
마찬가지로
-(BOOL) webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType {
NSString *URL = [[request URL] absoluteString];
NSLog(@"requested URL :%@", URL);
// URL이 특정 문자열과 매치하면
if ([URL isEqualToString:@
// 처리
return NO;
}
return YES;
}
커스텀 프로토콜을 지정할 수 있다. 말이 거창해서 커스텀 프로토콜이지 그냥 문자열 지지는 것으로 보면 쉽다.
'iOS' 카테고리의 다른 글
UINavigationController Customization (title, background color, image, add button) (0) | 2012.08.22 |
---|---|
UIWebView와 APP간의 통신(communication) (0) | 2012.08.20 |
iOS의 다양한 뷰 전환 - 1. 모달 뷰 컨트롤러 전환과 효과 (0) | 2012.08.20 |
UDID 대체 방법 -> MAC 어드레스 얻기 (0) | 2012.08.01 |
html 파싱 with apple 이게 최고다 (2) | 2012.07.10 |