Mengubah kualitas aplikasi menjadi lebih baik
Tetap teratur dengan koleksi
Simpan dan kategorikan konten berdasarkan preferensi Anda.
Artikel ini memetakan progres optimal aplikasi media dari kemungkinan
awal hingga yang terbaik di kelasnya. Hal ini dirancang untuk
membantu Anda mempertimbangkan penskalaan aplikasi dari waktu ke waktu, dan fitur apa yang harus
diterapkan. Meskipun setiap aplikasi media berbeda, pertimbangkan rekomendasi ini untuk
mendapatkan aplikasi terbaik di kelasnya.
Aplikasi media dasar memberi pengguna pengalaman mendasar, yang dapat
mencakup:
- Menawarkan penemuan dan penjelajahan konten dalam aplikasi
- Menawarkan pemutar media dalam aplikasi dengan kontrol pemutaran
- Menggunakan format yang didukung di seluruh
ekosistem Android
- Menerapkan praktik terbaik, seperti menggunakan library
Jetpack Media3 versi terbaru
- Berinvestasi dalam aksesibilitas
Aplikasi media yang lebih baik akan mulai mengembangkan jangkauannya untuk menjangkau pengguna di mana pun mereka berada dan
meningkatkan engagement. Anda juga dapat mulai mempertimbangkan peningkatan
yang lebih menyeluruh di aplikasi, yang mungkin mencakup:
Aplikasi media terbaik di kelasnya dibuat berdasarkan rekomendasi sebelumnya untuk membuat
pengalaman multiperangkat yang lancar bagi pengguna, yang mungkin mencakup:
Konten dan contoh kode di halaman ini tunduk kepada lisensi yang dijelaskan dalam Lisensi Konten. Java dan OpenJDK adalah merek dagang atau merek dagang terdaftar dari Oracle dan/atau afiliasinya.
Terakhir diperbarui pada 2025-07-27 UTC.
[[["Mudah dipahami","easyToUnderstand","thumb-up"],["Memecahkan masalah saya","solvedMyProblem","thumb-up"],["Lainnya","otherUp","thumb-up"]],[["Informasi yang saya butuhkan tidak ada","missingTheInformationINeed","thumb-down"],["Terlalu rumit/langkahnya terlalu banyak","tooComplicatedTooManySteps","thumb-down"],["Sudah usang","outOfDate","thumb-down"],["Masalah terjemahan","translationIssue","thumb-down"],["Masalah kode / contoh","samplesCodeIssue","thumb-down"],["Lainnya","otherDown","thumb-down"]],["Terakhir diperbarui pada 2025-07-27 UTC."],[],[],null,["# Take your app from good to better to best\n\nThis article charts the optimal progression of a media app from a likely\nstarting place to best-in-class. It's designed to\nhelp you think about scaling your app over time, and what features to implement\nwhen. While every media app is different, consider these recommendations to\nachieve a best-in-class app.\n\nBasic media app\n---------------\n\nA basic media app provides users with a foundational experience, which may\ninclude:\n\n- Offering in-app content browsing and discovery\n- Offering an in-app media player with playback controls\n- Using [formats](/guide/topics/media/media-formats) that are supported across the Android ecosystem\n- Implementing best practices, such as using the latest version of the [Jetpack Media3](/guide/topics/media/media3) library\n- Investing in [accessibility](/guide/topics/ui/accessibility)\n\nBetter media app\n----------------\n\nA better media app starts to grow its reach to meet users where they are and\nincrease engagement. You may also start to consider more holistic improvements\nin your app, which may include:\n\n- Using [ExoPlayer](/guide/topics/media/exoplayer) for advanced and customized playback features, such as using native platform [digital rights management](/guide/topics/media/exoplayer/drm) capabilities to protect content\n- Implementing a [`MediaSession`](/guide/topics/media/media3/getting-started/mediasession) to enable playback integration with external Android clients\n- Adding support for form factors such as [system media controls](/media/implement/surfaces/mobile) on mobile and large screen devices, [Wear OS](/training/wearables/apps/audio), [Android TV](/training/tv/playback), and [Android Auto](/training/cars/media)\n- Integrating with media resumption features, such as [Watch Next](/training/tv/discovery/watch-next-add-programs) on Android TV and [media controls](/media/implement/surfaces/mobile) on mobile and large screen devices\n- Enabling [picture-in-picture](/develop/ui/views/picture-in-picture) so users can multi-task\n- Improving [accessibility](/guide/topics/ui/accessibility) for all, such as by adding [subtitles](/guide/topics/media/exoplayer/media-items#sideloading_subtitle_tracks)\n- Supporting playback to [Cast](https://developers.google.com/cast/docs/developers) devices\n- Using [Google Play Billing](/google/play/billing) to handle subscriptions\n\nBest-in-class media app\n-----------------------\n\nA best-in-class media app builds on the previous recommendations to create a\nseamless multidevice experience for users, which may include:\n\n- Leveraging premium device capabilities by streaming [HDR](/media/grow/hdr-playback) and [spatial audio](/media/grow/spatial-audio) content when possible, and gracefully falling-back as necessary\n- Enabling [media downloading](/guide/topics/media/exoplayer/downloading-media) and offline playback\n- Optimizing for foldables by supporting the [`HALF_OPENED` state](/develop/ui/compose/layouts/adaptive/foldables/learn-about-foldables#foldable_postures)\n- Testing and refining voice assistant integrations, such as with [Google Assistant](/media/implement/assistant)\n- Investing in performance on lower-powered devices, for example by leveraging [performance class](/topic/performance/performance-class)\n- Supporting [Better Together](https://www.android.com/better-together) use cases, such as [Nearby Connections](https://developers.google.com/nearby/connections/overview)\n- Ensuring [design](/design/ui) consistency with the platform\n- Investing in seamless identity across surfaces such as [One Tap](https://developers.google.com/identity/one-tap/android/overview) and [account linking](https://developers.google.com/identity/account-linking)\n- Offering [frictionless subscriptions](https://www.youtube.com/watch?v=ARuf97ncE4w)\n- Implementing [Cast Connect](https://developers.google.com/cast/docs/android_tv_receiver) so users can cast to your native Android TV app"]]