JAVA -> Kotlin 으로 코드를 처음부터 다시 짜고,
안드로이드에서 그동안 바뀌었던 정책들도 고려해야 했고
안드로이드에서 targetSdk가 올라가면서 바뀌었던 기능들도 고려해야했고
추가적인 기능들의 변경도 있었기에
고려해야 할 점이 많았다.
출시 이후 사용자분들의 사용에 집중하였다.
문제점은 정말 너무 많아서, 나를 심하게 조여왔다.
해결된 문제점
1. 앱의 분위기가 한번에 바뀌었는데, 구체적인 설명이 앱 내에서 부족하다
-> 맨 처음 한 번만 뜨게 할 것이 아니라, '다시 보지 않기'를 통해 반복 접근 + 설명 자세히로 변경
2. 설정에서 어떤 기능들이 필요로 되는지 모르겠다
-> 필요하다고 싶은 기능들에 대해서는 'recommended'를 통해 언급
3. POST_NOTIFICATIONS 문제
-> targetsdk 33 부터는 POST_NOTIFICATIONS를 manifest에도 등록하고, 런타임 권한에도 요청해야함.
targetsdk를 32로 낮춤으로써 일단 간단하게 해결. 2023년 8월부터는 출시 시 targetsdk를 33으로 맞춰야 한다.
4. enterPictureInPictureMode
-> 사전에 권한이나 사용 가능한지에 대한 요청을 다 했음에도 불구하고 런타임 오류가 생기는 기기들이 있었다. 이는 runCatching을 통해 비정상 종료를 막는 대안을 최선으로 했다
5. navController.navigate() / java.lang.IllegalArgumentException
-> 리뉴얼 결과로, 앱 내에 어떤 변화가 있는지 알려주는 창이 있다. 이 창은 EntryActivity에서 띄워지는데, 무조건적으로
navigate(main->option) 으로 지정해놨으나, finish 이후에 뜨는 알림에 대해서는 현재 fragment가 main이 아닌 finish 이므로 에러가 발생하게 된다. 이를 위해, navController에서 현재 fragment가 어디로 되어있는지 확인 후 분기해주도록 수정하였다.
기타 고려해야할 것
1. 반복 실행
-> 맨 처음에 앱이 반복실행으로 두 번 창이 뜬다. 출시 후 실 기기에서 해보면 그러한 점은 없어서 살짝 당황스럽다.
2. 코루틴 스코프
-> 스코프 미스로 인한 오류도 있는 것 같다. 내가 아직 코틀린에 익숙하지도 않는데 자만하고 있지 않나?
'[개발 일지]' 카테고리의 다른 글
[2023.05.17] 당신이 잠든 사이에 리뉴얼 출시 이후.. (0) | 2023.05.18 |
---|---|
쓸데없는 선물, 웃긴 선물 모음집 사이트 (0) | 2023.05.17 |
안드로이드 테스팅의 중요성 (0) | 2023.05.15 |
Branch 관리 큰일난 것 같다. (0) | 2023.05.13 |
StreamBuilder, Floor (0) | 2023.04.23 |