마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

WebView에서 loadUrl 후 goBack을 하면 History가 변경됩니다!

0 추천
1) Main화면
07-09 15:31:16.382: D/LOG.(2849): CurIdx is : 0
07-09 15:31:16.382: D/LOG.(2849): URL[0] : http://www.***.com/#/main
 
2) Contents 영역 클릭하여 이동
07-09 15:31:20.867: D/LOG.(2849): CurIdx is : 1
07-09 15:31:20.867: D/LOG.(2849): URL[0] : http://www.***.com/#/main
07-09 15:31:20.867: D/LOG.(2849): URL[1] : http://www.***.com/#/search/goodsDetail/CBA803140714OZ9?tabMode=1
 
3) 홈버튼으로 loadUrl("http://www.***.com/#/main") 하여 홈으로 이동
07-09 15:31:28.104: D/LOG.(2849): CurIdx is : 2
07-09 15:31:28.104: D/LOG.(2849): URL[0] : http://www.***.com/#/main
07-09 15:31:28.104: D/LOG.(2849): URL[1] : http://www.***.com/#/search/goodsDetail/CBA803140714OZ9?tabMode=1
07-09 15:31:28.104: D/LOG.(2849): URL[2] : http://www.***.com/#/main
 
 
4) goBack() 1회
07-09 15:31:30.116: D/LOG.현재URL(2849): #### http://www.***.com/#/main
07-09 15:31:30.116: D/LOG.이동URL(2849): #### http://www.***.com/#/search/goodsDetail/CBA803140714OZ9?tabMode=1
07-09 15:31:33.330: D/LOG.(2849): CurIdx is : 2
07-09 15:31:33.330: D/LOG.(2849): URL[0] : http://www.***.com/#/main
07-09 15:31:33.330: D/LOG.(2849): URL[1] : http://www.***.com/#/search/goodsDetail/CBA803140714OZ9?tabMode=1
07-09 15:31:33.330: D/LOG.(2849): URL[2] : http://www.***.com/#/search/goodsDetail/CBA803140714OZ9?tabMode=1
 
 
 
 
 
 
BottomBar에 (뒤로/앞으로/홈) 버튼을 앱으로 구현하여 웹뷰 페이지 네비게이션을 작성중입니다.
 
Main -> Content -> Main 으로 이동하는 과정의 로그 인데요
WebBackForwardList로 확인 했을 때 1,2,3처럼 페이지 이동 시 History는 정상적으로 PUSH 됩니다.
 
하지만 goBack()했을 때
1) History값이 4번처럼 변경이 됩니다..
2) onPageFinished가 호출되면서 마지막 히스토리에 onPageFinished에서 가져온 url이 변경되어 저장되는 것 같습니다.
 
쌓은 History대로 이동만 하면 될텐데 loadUrl 했던 화면에서 goBack()만 하면 왜 저렇게 값이 변할까요?
 
 
이 현상 때문에 히스토리 관리가 잘 되지 않고있습니다..
 
원인이나 해결방법을 아시면 답변 부탁드리겠습니다

 

까먹지 (3,960 포인트) 님이 2014년 7월 9일 질문
까먹지님이 2014년 7월 9일 수정

답변 달기

· 글에 소스 코드 보기 좋게 넣는 법
· 질문에 대해 추가적인 질문이나 의견이 있으면 답변이 아니라 댓글로 달아주시기 바랍니다.
표시할 이름 (옵션):
개인정보: 당신의 이메일은 이 알림을 보내는데만 사용됩니다.
스팸 차단 검사:
스팸 검사를 다시 받지 않으려면 로그인하거나 혹은 가입 하세요.
...