본문 바로가기

Android

[android]WebView에서 Webpage의 javascriptinterface가 동작하지 않을 때 해결방법

Android API Level 4.2 (JELLY_BEAN_MR1) 이상에서 WebView의 javascriptinterface의 반응동작을 가져와 구현시킬 때 아래의 어노테이션을 붙여야함.

해당 방법은 javascript가 host application을 제어할 수 있도록 할 때 사용된다.


@JavascriptInterface


주의해야 할 점은 javascript가 의도하지 않은 방법으로 host application을 조작할 수 있기 때문에, 신뢰할 수 없는 페이지에 붙여서는 안된다.


@JavascriptInterface 에 대한 설명 :: 아래의 public void addJavascriptInterface (Object object, String name) 부분 참조.

http://developer.android.com/intl/ko/reference/android/webkit/WebView.html#addJavascriptInterface(java.lang.Object, java.lang.String)


아래는 사용의 예시.(Method는 반드시 public으로 지정)