IT/안드로이드

Uncaught TypeError: window.MyApp.goGoogleMarket is not a function",

조원태 2016. 12. 19. 15:08
반응형


Uncaught TypeError: window.MyApp.goGoogleMarket is not a function",


외부 자바스크립트에서 안드로이드 함수를 호출할 경우 찾을 수 없다는 에러 입니다.


아마 브릿지 클래스를 만들었을 텐데요.

@JavascriptInterface

위 코드를 추가해줘야 합니다. 안드로이드가 버전이 업되면서... 안드로이드 4.2버전 부터입니다.

private class AndroidBridge {
@JavascriptInterface
public void getJavascriptMessage(final String msg){
javascripthandler.post(new Runnable() {
@Override
public void run() {
Log.e("Webview Message :: " + msg , " MSG");
}
});
}

@JavascriptInterface
public boolean goGoogleMarket(){
javascripthandler.post(new Runnable() {
@Override
public void run() {
Intent intent = new Intent(Intent.ACTION_VIEW);

intent.setData(Uri.parse("market://details?id=" + getPackageName()));
startActivity(intent);
}
});

return true;
}

}


반응형