개발노트/Android
[Android] onCreateWindow 이슈 해결기
전지적진영시점
2023. 10. 30. 17:07
개발 환경
---------------------------------
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의 문제가 아닐까!?!?!?!?!!?!?!?
라고 부장님께 건의하고싶다.