Media apps can demand a lot of resources including memory, CPU, network
connections and hardware codecs, many of which are in short supply.
In addition, apps have to reliably manage interacting with other apps, such as
controller apps sending playback command requests or media playback starting
elsewhere in the system. This section discusses best practices for making sure
that users can rely on your app to perform well and as expected.

- Use testing tools like the [Media Controller Test app](https://developer.android.com/media/optimize/mct) to validate your playback use-cases
- Use a device's [performance class](https://developer.android.com/topic/performance/performance-class) level to accurately gauge device capabilities
- Cooperate with other apps to [manage audio focus](https://developer.android.com/media/optimize/audio-focus)
- [Measure](https://developer.android.com/media/optimize/performance/measure) your app's performance and make decisions accordingly
- Maintain high quality when preparing to [share videos](https://developer.android.com/media/optimize/sharing)