Hybrid 형태로 만들기 때문에 중요 logic 은 java native 로 작성한다.
java native 와 js 간의 interface 는 WebView 에서 제공하는 WebAppInterface를 이용해서 간단히 구현이 가능하다.
하지만, native java 와 js 간의 교환 가능한 data type 이 primitive type 이기 때문에 복잡한 data 교환에는 json 을 이용해야 한다. (http://stackoverflow.com/a/2251691)
Debugging
chrome 을 이용한 debugging
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) { WebView.setWebContentsDebuggingEnabled(true);}
logcat 을 이용해서 js의 console log 확인하기
webView.setWebChromeClient(new WebChromeClient() { public boolean onConsoleMessage(ConsoleMessage cm) { Log.d("MyGoogleFit2", cm.message() + " -- From line " + cm.lineNumber() + " of " + cm.sourceId() ); return true; } });
댓글 없음:
댓글 쓰기