안녕하세요!
WebView에 브라우져 백버턴 기능을 주는데 잘안되어 질문드립니다.
매번 안드로이드 개발할때마다 경우의 수가 발생하니 환장할 노릇이군여
안드로이드 하드백버턴 터치일때 javascript메소드 콜을 하게 합니다.
(
당최 아래 테그는 먹질않내요 원인은 정확히 모르겠습니다.
<a href="javascript:void(0);" onclick="history.back();return false;" onfocus="blur()" class="hd_btns back"><span>이전으로</span></a>
)
그래서 아래와 같이 처리를 했습니다
안드로이드 하드백버턴 호출시 실행을 합니다.
web.loadUrl(""javascript:historyBack()"); <---- (1)
========== HTML source============
function historyBack(){
var mdevice = new MobileDevice();
if('android' == mdevice.get())
{
window.android.historyBack(); <----- (2)
}
}
========== Android source ============
final public class HybirdBridge{
@JavascriptInterface
public void historyBack(){ <---- (3)
if (web.canGoBack()) {
web.goBack();
return;
}
..
}
실행순서는 1,2,3 순으로 실행이됩니다.
문제는 web.goBack()을 2번 실행을 해야 백이 먹는 이상한경우가 발생을 하는데
무슨경우 일까요?