온스타일 앱 개편 후 느려진 ‘스크롤 속도’ 개선한 사연

  • 관리자 신현승
  • 카테고리: 개발이슈
  • 조회수: 217
  • 작성일:

2025년 설 연휴를 맞아, 국내 주요 기업의 특색 있는 블로그 콘텐츠를 소개하는 시리즈가 준비되었습니다. 이번 글에서는 CJ온스타일 안드로이드 앱 개발자가 홈 탭 개편 후 발생한 스크롤 버벅임 문제를 어떻게 해결했는지에 대한 과정을 공유합니다.

 

CJ ENM 커머스 부문에서 Android 앱을 개발하는 신규찬입니다. 2024년 4월 홈 탭 개편 이후 다양한 UI와 영상이 포함되었고, 이로 인해 스크롤 시 발생하는 메모리 부하가 우려되었습니다. 실제로 스크롤 시 약간의 버벅임이 발견되었고, 이를 해결하기 위한 분석을 진행했습니다.

느려진 원인 분석

홈 탭의 스크롤 버벅임 원인은 크게 세 가지로 나눌 수 있습니다. 첫째, 동영상 Prepare 및 Release 시 메모리 사용, 둘째, Cookie 데이터를 가져오는 시점, 셋째, 비동기 모듈 호출 시점입니다.

영상 영역 문제

ExoPlayer를 사용하여 동영상을 관리하는데, 여러 개의 동영상이 Prepare와 Release를 반복하며 메모리를 소비합니다. 따라서 빠른 스크롤 시 동영상 Prepare는 건너뛰는 방식으로 개선했습니다.

이미지 로드 문제

성인 상품의 여부를 판단할 때 Cookie 데이터를 사용하였지만, 이를 SharedPreference로 변경하여 메모리 사용을 최소화했습니다.

비동기 처리 문제

비동기 통신 시 발생하는 문제를 해결하기 위해 호출된 API를 사전 호출하는 방식으로 UI 지연 현상을 최소화했습니다. 모든 동작은 TASK로 분리하여 처리되어, 동시에 발생하는 문제를 예방했습니다.

개선 결과

여러 개선 방안을 적용한 결과, 홈 탭의 스크롤 버벅임 현상이 확연히 줄어들었습니다. AS-IS와 TO-BE 비교 영상을 통해 그 변화를 확인할 수 있었습니다.

맺음말

이번 프로젝트는 메모리 활용을 줄이는 데 주력했습니다. 스크롤과 UI 처리에 대한 고민은 모든 개발자가 경험하는 문제이며, 이 글을 통해 유용한 인사이트를 제공하고자 합니다.


<원문>

Android 온스타일 홈탭 스크롤 속도 개선 Mission Possible
 


해당 기사는 GPT를 이용하여 요약한 내용입니다.

원문보기


코멘트 (0)