نقل تطبيقك من الجيد إلى الأفضل إلى الأفضل
تنظيم صفحاتك في مجموعات
يمكنك حفظ المحتوى وتصنيفه حسب إعداداتك المفضّلة.
توضح هذه المقالة التقدم الأمثل لتطبيق الوسائط من نقطة بداية محتملة إلى الأفضل في فئتها. وقد تم تصميم هذا البرنامج لمساعدتك على التفكير في توسيع نطاق تطبيقك بمرور الوقت والميزات التي يجب تنفيذها. على الرغم من اختلاف تطبيقات الوسائط، ننصحك
باتّباع هذه الاقتراحات لتحقيق أفضل تطبيق في فئته.
يوفّر تطبيق الوسائط الأساسي للمستخدمين تجربة أساسية، وقد تشمل ما يلي:
- توفير إمكانية تصفُّح المحتوى واستكشافه داخل التطبيق
- تقديم مشغّل وسائط داخل التطبيق مع عناصر تحكم في التشغيل
- إن استخدام التنسيقات المتوافقة مع
منظومة Android المتكاملة
- تنفيذ أفضل الممارسات، مثل استخدام أحدث إصدار من مكتبة
Jetpack Media3
- الاستثمار في تسهيل الاستخدام
بدأ تطبيق الوسائط الأفضل في التوسع في مدى وصوله للوصول إلى المستخدمين أينما كانوا وزيادة التفاعل. يمكنك أيضًا البدء في التفكير في تحسينات أكثر
شمولية في تطبيقك، والتي قد تشمل:
يعتمد تطبيق الوسائط الأفضل في فئته على الاقتراحات السابقة لتوفير تجربة سلسة للمستخدمين على أجهزة متعددة، والتي قد تتضمن:
يخضع كل من المحتوى وعيّنات التعليمات البرمجية في هذه الصفحة للتراخيص الموضحّة في ترخيص استخدام المحتوى. إنّ Java وOpenJDK هما علامتان تجاريتان مسجَّلتان لشركة Oracle و/أو الشركات التابعة لها.
تاريخ التعديل الأخير: 2025-07-27 (حسب التوقيت العالمي المتفَّق عليه)
[null,null,["تاريخ التعديل الأخير: 2025-07-27 (حسب التوقيت العالمي المتفَّق عليه)"],[],[],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"]]