안녕하세요. 이번 포스팅은 Compose Pager에서 Swipe할 때 렉이 걸리는 문제를 해결했던 과정을 작성하려고 합니다.
상황
위의 영상에서 3~4초쯤 Swipe 시 버벅이는 문제가 발생해서 해결하기 위해 먼저 인터넷 검색을 했습니다.
StackOverflow에서 제시한 해결법
1. Pager내에 Coil을 사용한 경우 렉이 있을 수도 있다. (링크)
- Pager, LazyColumn에서 Coil을 사용할 경우 렉이 있다는 이슈가 있다고 한다. 하지만 나같은 경우에는 로컬에서 이미지를 불러오기 때문에 해당하지 않는다.
2. Pager내에서 LazyRow, LazyColumn을 사용한 경우 (링크)
- 두개 동시에 사용한경우 렉이 걸리는 이슈가 있다고 한다. 하지만 해당하지 않아서 패스했다.
둘 다 해당하지 않아서 나는 Android Profiler를 사용해볼려고 한다.
Android Profiler로 확인해본 결과
메모리를 많이 사용하는 코드 문제가 아닌 에뮬레이터에서 터치를끝내는 구간을 찾지 못해서 이런 문제가 발생한 것 같았다. 해당현상이 일어난 이유는 내가 에뮬레이터를 최소화해서 사용해 해당 이슈가 일어났다.
위의 사진과 같이 화면을 최대화한 후 테스트를 하니 해당 이슈가 발생하지 않았다.
결론
에뮬레이터로 테스트할 때 공간을 남겨두고 테스트를 하거나 클릭 후 클릭을 해제할 때 에뮬레이터 내에서 해제해서 터치 이벤트가 어디서 끝나는지 알려줘야 할 것 같다.
'안드로이드 > 잡다한 지식' 카테고리의 다른 글
[안드로이드] AsyncTask가 Deprecated된 이유 (0) | 2023.05.19 |
---|---|
[kotlin] 데이터 클래스 활용법 (0) | 2023.05.18 |
MPAndroidChart 너는 뭐니 (1) | 2023.04.11 |
[안드로이드] 클린 아키텍처? MVVM? MVP? (0) | 2023.03.11 |
안드로이드 RoomDB 테스트 코드 짜기 (0) | 2023.02.23 |