支持的设备

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

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

对于给定的用例,我们旨在在满足最低版本要求的所有Android设备上支持ExoPlayer。一些已知的设备特定兼容性问题列在下面。设备特定问题也列在Media3 GitHub问题追踪器旧版ExoPlayer GitHub问题追踪器上。

  • FireOS(版本4及更早版本):虽然我们努力支持FireOS设备,但FireOS是Android的分支,因此我们无法保证支持。在FireOS上遇到的设备特定问题通常是由FireOS提供的运行Android应用程序的支持中的不兼容性引起的。此类问题应首先报告给亚马逊。我们知道影响FireOS版本4及更早版本的问题。我们认为FireOS版本5解决了这些问题。
  • Nexus Player(仅当使用HDMI转DVI线缆时):已知Nexus Player存在一个问题,仅当设备使用某种类型的HDMI转DVI线缆连接到显示器时,才会导致视频播放速度过快。对于最终用户设置,使用HDMI转DVI线缆并不现实,因为此类线缆无法传输音频。因此,可以安全地忽略此问题。我们建议使用现实的最终用户设置(例如,使用标准HDMI线缆将设备连接到电视)进行开发和测试。
  • 模拟器:一些Android模拟器未正确实现Android媒体堆栈的组件,因此不支持ExoPlayer。这是模拟器的问题,而不是ExoPlayer的问题。Android的官方模拟器(Android Studio中的“虚拟设备”)支持ExoPlayer,前提是系统映像的API级别至少为23。API级别较低的系统映像不支持ExoPlayer。第三方模拟器提供的支持级别各不相同。在第三方模拟器上运行ExoPlayer时遇到的问题应报告给模拟器开发人员,而不是ExoPlayer团队。在可能的情况下,我们建议在物理设备上而不是模拟器上测试媒体应用程序。