도리안의 개발 이야기 #166 - 안드로이드 웹뷰에서 버튼 클릭이 되지 않았던 이유

in #kr-dev5 years ago (edited)



대문 제작: imrahelk

웹 브라우저에서는 버튼 클릭이 잘 되는데, 안드로이드 웹 뷰에서는 클릭이 안 되는 이슈가 있었습니다. 웹 페이지를 제가 아닌 외부 업체가 만든 거라 어떻게 해결할지 접근이 쉽지 않았습니다. 크롬의 검사 기능을 이용해 소스에 접근할 수 있었고요. 해당 버튼 클릭을 처리하는 코드를 보니 localStorage에 접근하려는 시도가 있었습니다. 웹뷰에서 저거를 사용하지 못해 클릭이 처리되지 않은 것으로 보였지요.

검색을 해보니 안드로이드 웹뷰에서 localStorage를 사용하기 위해서는 바꿔야 할 설정이 있습니다. 그것은 Dom Storage를 허가하는 것입니다. 이거를 설정해주니 버튼 클릭이 정상적으로 처리됨을 확인했습니다. 이를 코드로 아래와 같이 정리합니다.

WebView webView = (WebView)findViewById(R.id.webView);
WebSettings ws = webView.getSettings();
ws.setJavaScriptEnabled(true);        // 자바스크립트 사용이 가능해야 함
ws.setDomStorageEnabled(true);        // localStorage 사용을 위해

참고 사이트

이 글은 네이버 블로그에서도 보실 수 있습니다.

https://netrance.blog.me/221585695432

aaronhong_banner.jpg

Coin Marketplace

STEEM 0.29
TRX 0.12
JST 0.033
BTC 62937.86
ETH 3092.40
USDT 1.00
SBD 3.87