본문 바로가기
개발노트/Android

[Android] onCreateWindow 이슈 해결기

by 전지적진영시점 2023. 10. 30.
반응형

개발 환경

---------------------------------

OS : Mac

개발 툴 : Android Studio

개발 언어 : Kotlin

targetSdk : 34

minSdk : 23

---------------------------------

 

지금 작업하는 앱은 98프로webView로 서비스하는 하이브리드 앱이다.

이 webView안에서 새창을 참 자주 여는데 어떤 창은 뒤로가기로 닫은 후 다시 열었을 때 잘 열리고 

어떤 화면은 뒤로가기로 창을 닫으면 창이 더이상 안뜬다 일정 시간이 지나야 뜬다 ㅡㅡ

 

알아보니 webView가 해제되기까지 시간이 조금 걸리는거 같고 이 시간동안 재실행을 못하게 한다는 말도 있고 흠

여튼 이유가 어쨋든 원인은 webView가 제대로 해제되지 않았기 때문에 발생한 이슈로 보였다.

 

dialogView.setOnKeyListener { _, keyCode, _ ->
    if (keyCode == KeyEvent.KEYCODE_BACK) {
        newWebView.destroy()
        dialogView.dismiss()
        true // 이벤트 소비
    } else {
        false // 기본 동작 수행
    }
}

그래서 backKey를 누르면 webView를 destory 처리해주기로 했다.

잘 작동한다.

 

근데 oncreateWindow에서 호출하는 컴포넌트는 똑같은데 url에 따라 동작을 제대로 안한다면

그거는 Web의 문제가 아닐까!?!?!?!?!!?!?!?

라고 부장님께 건의하고싶다.

반응형

댓글