支持的设备

核心 ExoPlayer 用例所需的最低 Android 版本如下:

用例 Android 版本 API 级别
音频播放 5.0 21
音频播放(使用分流) 10 29
视频播放 5.0 21
视频播放(带效果) 5.0 21
视频播放(HDR) 7.0 24
DASH(无 DRM) 5.0 21
DASH(Widevine CENC;“cenc”方案) 5.0 21
DASH(Widevine CENC;“cbcs”方案) 7.1 25
DASH(ClearKey;“cenc”方案) 5.0 21
SmoothStreaming(无 DRM) 4.4 19
SmoothStreaming(PlayReady;“cenc”方案) Android TV Android TV
HLS(无 DRM) 5.0 21
HLS(AES-128 加密) 5.0 21
HLS(Widevine CENC;“cenc”方案) 4.4 19
HLS(Widevine CENC;“cbcs”方案) 7.1 25

对于给定的用例,我们的目标是在满足最低版本要求的所有 Android 设备上支持 ExoPlayer。Media3 GitHub 问题跟踪器旧版 ExoPlayer GitHub 问题跟踪器中列出了特定于设备的已知问题。

模拟器

某些 Android 模拟器未正确实现 Android 媒体堆栈的组件,因此不支持 ExoPlayer。这是模拟器的问题,而不是 ExoPlayer 的问题。Android 的官方模拟器(Android Studio 中的“虚拟设备”)支持 ExoPlayer,前提是系统映像的 API 级别至少为 23。较低 API 级别的系统映像不支持 ExoPlayer。第三方模拟器提供的支持服务等级各不相同。在第三方模拟器上运行 ExoPlayer 时遇到的问题应报告给模拟器的开发者,而不是 ExoPlayer 团队。我们建议您尽可能在实体设备(而非模拟器)上测试媒体应用。