使用预加载管理器可加快响应速度
使用集合让一切井井有条
根据您的偏好保存内容并对其进行分类。
Media3 库提供了一个预加载管理器,可帮助您在应用中更快地向用户展示媒体内容。预加载管理器会在用户开始播放媒体内容之前加载相应内容。这样,当用户切换到其他内容时,可以更快地开始播放,即在加载其余内容以供播放的同时,预加载的内容可以开始播放。
Media3 提供了一个抽象类 BasePreloadManager
,您可以自定义该类以实现您可能拥有的任何内容优先级排序策略。这组文档介绍了如何使用 Media3 库中也提供的 BasePreloadManager
的实现:DefaultPreloadManager
,该实现假定媒体位于一维列表(如播放列表或轮播界面)中,并根据媒体项与当前播放的媒体的接近程度来确定媒体项的优先级。
该文档涵盖以下主题:
本页面上的内容和代码示例受内容许可部分所述许可的限制。Java 和 OpenJDK 是 Oracle 和/或其关联公司的注册商标。
最后更新时间 (UTC):2025-09-04。
[null,null,["最后更新时间 (UTC):2025-09-04。"],[],[],null,["The Media3 library provides a preload manager to help you show media faster to\nusers in your app. The preload manager loads content from media before the user\nstarts playing it. That way, when the user changes to a different piece of\ncontent, it can start playing faster--the preloaded content can start playing\nwhile the rest of the content is loaded for playback.\n\nMedia3 provides an abstract class, [`BasePreloadManager`](/reference/androidx/media3/exoplayer/source/preload/BasePreloadManager), which can be\ncustomized to implement whatever strategy you might have for prioritizing\ncontent. This document set explains how to use an implementation of\n`BasePreloadManager` that's also provided in the Media3 library:\n[`DefaultPreloadManager`](/reference/androidx/media3/exoplayer/source/preload/DefaultPreloadManager), which assumes media is in a one-dimensional list\n(like a playlist or carousel), and prioritizes media items based on how close\nthey are to the media that's currently playing.\n\nThe documentation covers the following topics:\n\n- [Preload manager concepts](/media/media3/exoplayer/preloading-media/preloadmanager/concepts)\n- [Create a preload manager](/media/media3/exoplayer/preloading-media/preloadmanager/create)\n- [Manage and play content](/media/media3/exoplayer/preloading-media/preloadmanager/manage-play)"]]