Stay organized with collections
Save and categorize content based on your preferences.
Annotations
Interfaces
Classes
Exceptions
Content and code samples on this page are subject to the licenses described in the Content License. Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
Last updated 2025-06-04 UTC.
[null,null,["Last updated 2025-06-04 UTC."],[],[],null,["# androidx.media3.exoplayer.offline\n=================================\n\n*** ** * ** ***\n\n[Kotlin](/reference/kotlin/androidx/media3/exoplayer/offline/package-summary \"View this page in Kotlin\") \\|Java\n\nAnnotations\n-----------\n\n|-----------------------------------------------------------------------------------------------|------------------|\n| [Download.FailureReason](/reference/androidx/media3/exoplayer/offline/Download.FailureReason) | Failure reasons. |\n| [Download.State](/reference/androidx/media3/exoplayer/offline/Download.State) | Download states. |\n\nInterfaces\n----------\n\n|---------------------------------------------------------------------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| [DownloadCursor](/reference/androidx/media3/exoplayer/offline/DownloadCursor) | Provides random read-write access to the result set returned by a database query. |\n| [DownloadHelper.Callback](/reference/androidx/media3/exoplayer/offline/DownloadHelper.Callback) | A callback to be notified when the [DownloadHelper](/reference/androidx/media3/exoplayer/offline/DownloadHelper) is prepared. |\n| [DownloadIndex](/reference/androidx/media3/exoplayer/offline/DownloadIndex) | An index of [Downloads](/reference/androidx/media3/exoplayer/offline/Download). |\n| [DownloadManager.Listener](/reference/androidx/media3/exoplayer/offline/DownloadManager.Listener) | Listener for [DownloadManager](/reference/androidx/media3/exoplayer/offline/DownloadManager) events. |\n| [Downloader](/reference/androidx/media3/exoplayer/offline/Downloader) | Downloads and removes a piece of content. |\n| [Downloader.ProgressListener](/reference/androidx/media3/exoplayer/offline/Downloader.ProgressListener) | Receives progress updates during download operations. |\n| [DownloaderFactory](/reference/androidx/media3/exoplayer/offline/DownloaderFactory) | Creates [Downloaders](/reference/androidx/media3/exoplayer/offline/Downloader) for given [DownloadRequests](/reference/androidx/media3/exoplayer/offline/DownloadRequest). |\n| [FilterableManifest](/reference/androidx/media3/exoplayer/offline/FilterableManifest) | A manifest that can generate copies of itself including only the streams specified by the given keys. |\n| [WritableDownloadIndex](/reference/androidx/media3/exoplayer/offline/WritableDownloadIndex) | A writable index of [Downloads](/reference/androidx/media3/exoplayer/offline/Download). |\n\nClasses\n-------\n\n|-------------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| [DefaultDownloadIndex](/reference/androidx/media3/exoplayer/offline/DefaultDownloadIndex) | A [DownloadIndex](/reference/androidx/media3/exoplayer/offline/DownloadIndex) that uses SQLite to persist [Downloads](/reference/androidx/media3/exoplayer/offline/Download). |\n| [DefaultDownloaderFactory](/reference/androidx/media3/exoplayer/offline/DefaultDownloaderFactory) | Default [DownloaderFactory](/reference/androidx/media3/exoplayer/offline/DownloaderFactory), supporting creation of progressive, DASH, HLS and SmoothStreaming downloaders. |\n| [Download](/reference/androidx/media3/exoplayer/offline/Download) | Represents state of a download. |\n| [DownloadHelper](/reference/androidx/media3/exoplayer/offline/DownloadHelper) | A helper for initializing and removing downloads. |\n| [DownloadHelper.Factory](/reference/androidx/media3/exoplayer/offline/DownloadHelper.Factory) | A factory of [DownloadHelper](/reference/androidx/media3/exoplayer/offline/DownloadHelper). |\n| [DownloadManager](/reference/androidx/media3/exoplayer/offline/DownloadManager) | Manages downloads. |\n| [DownloadNotificationHelper](/reference/androidx/media3/exoplayer/offline/DownloadNotificationHelper) | Helper for creating download notifications. |\n| [DownloadProgress](/reference/androidx/media3/exoplayer/offline/DownloadProgress) | Mutable [Download](/reference/androidx/media3/exoplayer/offline/Download) progress. |\n| [DownloadRequest](/reference/androidx/media3/exoplayer/offline/DownloadRequest) | Defines content to be downloaded. |\n| [DownloadRequest.Builder](/reference/androidx/media3/exoplayer/offline/DownloadRequest.Builder) | A builder for download requests. |\n| [DownloadRequest.ByteRange](/reference/androidx/media3/exoplayer/offline/DownloadRequest.ByteRange) | Defines the byte range. |\n| [DownloadRequest.TimeRange](/reference/androidx/media3/exoplayer/offline/DownloadRequest.TimeRange) | Defines the time range. |\n| [DownloadService](/reference/androidx/media3/exoplayer/offline/DownloadService) | A [Service](https://developer.android.com/reference/android/app/Service.html) for downloading media. |\n| [FilteringManifestParser](/reference/androidx/media3/exoplayer/offline/FilteringManifestParser) | A manifest parser that includes only the streams identified by the given stream keys. |\n| [ProgressiveDownloader](/reference/androidx/media3/exoplayer/offline/ProgressiveDownloader) | A downloader for progressive media streams. |\n| [SegmentDownloader](/reference/androidx/media3/exoplayer/offline/SegmentDownloader) | Base class for multi segment stream downloaders. |\n| [SegmentDownloader.BaseFactory](/reference/androidx/media3/exoplayer/offline/SegmentDownloader.BaseFactory) | A base class of the factory of the concrete extension of [SegmentDownloader](/reference/androidx/media3/exoplayer/offline/SegmentDownloader). |\n| [SegmentDownloader.Segment](/reference/androidx/media3/exoplayer/offline/SegmentDownloader.Segment) | Smallest unit of content to be downloaded. |\n\nExceptions\n----------\n\n|-----------------------------------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------|\n| [DownloadException](/reference/androidx/media3/exoplayer/offline/DownloadException) | Thrown on an error during downloading. |\n| [DownloadHelper.LiveContentUnsupportedException](/reference/androidx/media3/exoplayer/offline/DownloadHelper.LiveContentUnsupportedException) | Thrown at an attempt to download live content. |\n| [DownloadRequest.UnsupportedRequestException](/reference/androidx/media3/exoplayer/offline/DownloadRequest.UnsupportedRequestException) | Thrown when the encoded request data belongs to an unsupported request type. |"]]