728x90
애플리케이션 이슈를 확인하던 중 모바일 기기의 뒤로 가기 버튼을 클릭하면 무작정 history back이 되는 현상을 확인
물론 뒤로가기 버튼을 누르면 history back이 되어야 하는 것이 맞지만 특정 상황 예를 들어
회원가입 후, 로그인 이후 등과 같은 상황에서 홈 화면으로 리다이렉트 된 이후 뒤로 가기 버튼을 누르면 다시
해당 페이지로 가게 되는데 굉장히 불편한 상황을 만들어내는 것 같아 이 녀석을 수정하기로 마음을 먹었다.
그래서 홈 화면으로 리다이렉트 되었을 경우 history를 전부 지워 뒤로 이동할 곳을 없애고 홈 화면에서
뒤로 가기를 누르면 무조건 어플이 종료되게끔 구현해 보았다.
@Override
public void onPageFinished(WebView view, String url) {
_debugUrl = url;
if (USE_PROGRESS) mViewProgress.setVisibility(View.GONE);
isLoading = false;
Timber.d("isOnNewIntent:" + isOnNewIntent + ", MV_TYPE:" + MV_TYPE + ", MV_IDX:" + MV_IDX);
if (!isOnNewIntent && MV_TYPE != null && MV_IDX != null && !isFirst) {
isFirst = true;
_uiHander.sendEmptyMessageDelayed(0, 1200);
}
}
이렇게 되어 있던 기존 코드에서
public void onPageFinished(WebView view, String url) {
_debugUrl = url;
if (USE_PROGRESS) mViewProgress.setVisibility(View.GONE);
isLoading = false;
Timber.d("isOnNewIntent:" + isOnNewIntent + ", MV_TYPE:" + MV_TYPE + ", MV_IDX:" + MV_IDX);
if (!isOnNewIntent && MV_TYPE != null && MV_IDX != null && !isFirst) {
isFirst = true;
_uiHander.sendEmptyMessageDelayed(0, 1200);
}
if (url.equals("여기에 url 주소")) {
view.clearHistory();
super.onPageFinished(view, url);
}
}
이런 식으로 홈 주소에 접근하면 history를 지우고 재귀하는 코드를 삽입하였다.
앱 개발자가 아니다 보니 이런 식으로 수정하기는 했는데 더 좋은 방법이 있을지도 모르겠다...
'Etc' 카테고리의 다른 글
GitHub repositories 폴더 화살표 이슈 (0) | 2022.06.20 |
---|---|
눈물의 Git contributions 이슈 (0) | 2022.06.13 |
Ubuntu 20.04 Waiting for cache lock: Could not get lock /var/lib/dpkg/lock. 오류 (0) | 2022.04.27 |
Git stash - 작업 내용 임시 저장하기 (0) | 2022.04.21 |
git commit 시 여러 계정을 사용하는 경우 (1) | 2022.02.22 |