Android 도구로 사용자 환경을 최적화한 TikTok
컬렉션을 사용해 정리하기
내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요.
TikTok은 전 세계 10억 명이 넘는 사람들이 커뮤니티를 중심으로 하는 엔터테인먼트 공간으로, 이곳에서 전 세계 10억 명이 좋아하는 콘텐츠를 발견하고 제작하며 공유합니다.
사용자층이 다양하려면 다양한 네트워크 조건과 기기 사양이 필요하며, 모든 사용자는 자신이 사용하는 기기와 상관없이 원활하고 응답성이 높은 앱 환경을 원합니다.
TikTok의 로드 속도가 느리거나 재생이 멈추면 사용자는 불만을 느끼고 앱을 완전히 잃게 됩니다. 이를 방지하기 위해 TikTok은 데이터 모니터링, 동종 앱 비교, 사용자 설문조사를 활용하여 전반적인 앱 성능을 추적합니다. 또한 팀은 UI 버벅거림, 재생 지연, 네트워크 문제를 줄이기 위해 Systrace 및 Simpleperf와 같은 프로파일링 도구도 채택했습니다. 이 방법이 효과적이기는 하지만 엔지니어링팀은 한 걸음 더 나아가 실적에 영향을 미치는 근본적인 요인을 발견하고 정량화 가능한 성과 지표를 토대로 최적화 계획을 수립할 방법을 찾고 있었습니다.
진행 방법
TikTok의 목표는 시작 속도를 더 빠르게 달성하고 더욱 원활한 재생과 사용자 경험을 보장하는 것이었습니다. 이러한 목표를 달성하기 위해 팀은 Android 개발 도구를 사용하여 개선이 필요한 영역을 찾고 개선했습니다.
TikTok의 시작 시간을 줄이기 위해 팀은 Android Jetpack의 앱 시작 라이브러리를 기반으로 시작 프레임워크를 리팩터링했습니다.
더 매끄러운 사용자 인터페이스를 만들기 위해 팀은 Andriod Studio의 Layout Inspector를 사용하여 뷰 계층 구조를 간소화하고 과도한 콘텐츠를 삭제했습니다. TikTok은 앱이 실행되는 동안 일관된 프레임 속도를 보장하기 위해 복잡한 작업을 여러 프레임에 분산하는 전략을 개발했습니다.
동영상 재생은 TikTok 앱 환경의 핵심입니다. 팀은 플레이어 인스턴스를 재사용하고 미리 로드/사전 렌더링을 활용하여 한 동영상을 시청한 다음 다른 동영상으로 전환하는 빠르고 원활한 전환을 만들었습니다.
결과
TikTok팀은 1년 넘게 Android 성능 도구를 사용하여 모든 성능 요소를 추적, 수량화, 최적화해 왔습니다. 다음을 포함한 여러 앱의 성능 지표가 크게 개선되었습니다.
- 앱 시작 시간이 45% 단축됨
- 사용자 환경에서 버벅거림, 드롭 또는 정지된 프레임이 49% 감소했으며, 동영상 재생 시 첫 프레임이 41% 빨라지고 동영상 지연 시간이 27% 감소했습니다.
사용자 환경이 개선되면서 이제 더 많은 사람들이 TikTok을 사용하고 있습니다. 세션 시간이 증가했고 사용자가 앱에서 활성 상태를 유지할 가능성이 커졌습니다. 사용자당 활성 일수는 30일 동안 1% 증가했습니다. 사용자 설문조사와 앱 평점에서도 전반적인 사용자 만족도가 크게 높아진 것으로 나타났습니다.
Android 13팀은 Android 앱 우수성을 달성하는 데 초점을 맞추고 최신 플랫폼 버전인 Android 13을 타겟팅함으로써 사용자 환경을 지속적으로 개선함으로써 더 많은 사람들이 콘텐츠를 공유하고 소비하도록 유도하고 있습니다.
현재 전 세계적으로 2억 5천만 대 이상의 대형 화면 Android 기기가 사용되고 있는 가운데, 팀은 가까운 미래에 사용자에게 더 몰입도 높은 TikTok 환경을 제공하기 위해 대형 화면 기기 도입을 늘리는 데에도 집중하고 있습니다.
시작하기
TikTok팀이 성능 데이터를 기반으로 앱을 최적화하고 Android 도구를 사용하여 전반적인 앱 환경을 개선한 방법을 자세히 알아보려면 개발자를 위한 기술 우수사례를 읽어보세요.
이 페이지에 나와 있는 콘텐츠와 코드 샘플에는 콘텐츠 라이선스에서 설명하는 라이선스가 적용됩니다. 자바 및 OpenJDK는 Oracle 및 Oracle 계열사의 상표 또는 등록 상표입니다.
최종 업데이트: 2025-07-27(UTC)
[[["이해하기 쉬움","easyToUnderstand","thumb-up"],["문제가 해결됨","solvedMyProblem","thumb-up"],["기타","otherUp","thumb-up"]],[["필요한 정보가 없음","missingTheInformationINeed","thumb-down"],["너무 복잡함/단계 수가 너무 많음","tooComplicatedTooManySteps","thumb-down"],["오래됨","outOfDate","thumb-down"],["번역 문제","translationIssue","thumb-down"],["샘플/코드 문제","samplesCodeIssue","thumb-down"],["기타","otherDown","thumb-down"]],["최종 업데이트: 2025-07-27(UTC)"],[],[],null,["# TikTok Optimizes User Experience with Android Tools\n\n[TikTok](https://play.google.com/store/apps/details?id=com.zhiliaoapp.musically), the world's community-driven entertainment destination, brings over 1 billion people together from around the world to discover, create and share content they love.\n\nA diverse user base requires various network conditions and device specifications, and all users want a seamless, responsive app experience regardless of which device they use.\n\nIf TikTok is slow to load, or playbacks get stuck, users will get frustrated and abandon the app altogether. To avoid this, TikTok relies on data monitoring, peer app comparison and user surveys to track the overall app performance. The team also adopted profiling tools like [Systrace](https://developer.android.com/topic/performance/tracing) and [Simpleperf](https://developer.android.com/ndk/guides/simpleperf), to reduce UI jank, playback lags and network issues. While this has been working well, the engineering team was looking to take it one step further and uncover the underlying factors affecting the performance and develop an optimization plan with quantifiable performance indicators.\n\nHow they did it\n---------------\n\nTikTok's goal was to achieve a faster startup speed and ensure a more seamless playback and user experience. To meet these goals, the team used Android development tools to find areas of improvement and refine them.\n\nTo reduce TikTok's startup time, the team refactored the startup framework based on Android [Jetpack's App Startup library](https://developer.android.com/topic/libraries/app-startup).\n\nTo ensure a smoother user interface, the team used the [Layout Inspector](https://developer.android.com/studio/debug/layout-inspector) in [Andriod Studio](https://developer.android.com/studio) to simplify their View hierarchy and remove excessive content. TikTok developed a strategy to spread complex tasks across different frames to ensure consistent frame rates while the app is running.\n\nVideo playback is at the core of TikTok's app experience. The team reused player instances and utilized preloading/pre-rendering to create quick and seamless transitions from watching one video then switching to another.\n\nResults\n-------\n\nThe TikTok team has been using [Android performance tools](https://developer.android.com/topic/performance) for over a year to track, quantify, and optimize all of their performance factors. Many of the app's performance indicators have seen significant improvement, including:\n\n- The app startup time was reduced by 45%\n- A 49% decrease in jank, dropped or frozen frames in user experience - the first frame when playing a video now appears 41% faster and video lag has been reduced by 27%\n\nWith an improved user experience, more people are now using TikTok. Session duration has gone up and users are more likely to stay active in the app with the active days per user in 30 days increasing by 1%. User surveys and app ratings have also pointed to a significant increase in overall user satisfaction.\n\nBy shifting their focus on achieving [Android App Excellence](https://developer.android.com/quality) and targeting the latest platform release, Android 13, the team continuously improves the user experience, leading more people to share and consume content.\n\nWith more than 250 million large screen Android devices currently in use globally, the team is also focusing on growing their large-screen device adoption to bring a more immersive TikTok experience for users in the near future.\n\nGet Started\n-----------\n\nTo learn more about how the TikTok team optimized their app based on performance data and improved the overall app experience using Android tools, please read our [technical case study](https://android-developers.googleblog.com/2022/08/precise-improvements-how-tiktok-enhanced-its-social-experience-on-android.html) for developers."]]