Native에서 웹의 javascript를 호출하려 합니다.
즉, 웹에서 버튼을 눌러 이전 페이지로 가려합니다.
그런데, 아래 첨부한 소스의 goBackPage()에서 webView 접근이 되지 않습니다. webView.goBack() ... 등.
showToast(1) 메소드는 잘 동작합니다. WebAppInterface 클래스 내에서 자바스크립트 이전 버튼을 눌렀을때, webView를 컨트롤 하려면 어떻게 해야 할까요?
아시는 분 답변부탁드립니다...
public class WebViewActivity extends AppCompatActivity {
private WebView webView;
...
@Override
protected void onCreate(Bundle savedInstanceState) {
webView = (WebView)findViewById(R.id.webView);
webView.addJavascriptInterface(new WebAppInterface(this), "Android");
...
}
public class WebAppInterface {
private Context mContext;
/** Instantiate the interface and set the context */
WebAppInterface(Context c) {
mContext = c;
}
@JavascriptInterface
public void showToast(String toast) {
Toast.makeText(mContext, toast, Toast.LENGTH_SHORT).show();
}
@JavascriptInterface
public void goBackPage() {
if(webView.canGoBack()) {
webView.goBack();
} else {
finish();
}
}
}