2015-12-17 04:49:19 +08:00
|
|
|
|
# ExoPlayer #
|
2014-06-16 19:55:31 +08:00
|
|
|
|
|
2015-12-17 04:49:19 +08:00
|
|
|
|
ExoPlayer is an application level media player for Android. It provides an alternative to Android’s
|
|
|
|
|
MediaPlayer API for playing audio and video both locally and over the Internet. ExoPlayer supports
|
|
|
|
|
features not currently supported by Android’s MediaPlayer API, including DASH and SmoothStreaming
|
|
|
|
|
adaptive playbacks. Unlike the MediaPlayer API, ExoPlayer is easy to customize and extend, and can
|
|
|
|
|
be updated through Play Store application updates.
|
2014-06-16 19:55:31 +08:00
|
|
|
|
|
2015-12-11 02:06:46 +08:00
|
|
|
|
## News ##
|
|
|
|
|
|
|
|
|
|
Read news, hints and tips on the [news][] page.
|
|
|
|
|
|
|
|
|
|
[news]: https://google.github.io/ExoPlayer/news.html
|
|
|
|
|
|
2015-12-11 02:08:39 +08:00
|
|
|
|
## Documentation ##
|
|
|
|
|
|
2015-12-17 04:49:19 +08:00
|
|
|
|
* The [developer guide][] provides a wealth of information to help you get started.
|
2015-12-11 02:08:39 +08:00
|
|
|
|
* The [class reference][] documents the ExoPlayer library classes.
|
|
|
|
|
* The [release notes][] document the major changes in each release.
|
|
|
|
|
|
|
|
|
|
[developer guide]: https://google.github.io/ExoPlayer/guide.html
|
|
|
|
|
[class reference]: https://google.github.io/ExoPlayer/doc/reference
|
|
|
|
|
[release notes]: https://github.com/google/ExoPlayer/blob/dev/RELEASENOTES.md
|
|
|
|
|
|
2015-12-17 04:49:19 +08:00
|
|
|
|
## Using ExoPlayer ##
|
2015-12-11 01:47:03 +08:00
|
|
|
|
|
2015-12-17 04:49:19 +08:00
|
|
|
|
#### Via jCenter ####
|
2015-12-15 00:15:23 +08:00
|
|
|
|
|
2015-12-17 04:49:19 +08:00
|
|
|
|
The easiest way to get started using ExoPlayer is by including the following in your project's
|
|
|
|
|
`build.gradle` file:
|
2015-12-11 01:47:03 +08:00
|
|
|
|
|
2015-12-17 04:49:19 +08:00
|
|
|
|
```
|
|
|
|
|
gradle
|
|
|
|
|
compile 'com.google.android.exoplayer:exoplayer:rX.X.X'
|
|
|
|
|
```
|
2015-12-15 00:15:23 +08:00
|
|
|
|
|
2015-12-17 04:49:19 +08:00
|
|
|
|
where `rX.X.X` is the your preferred version. For the latest version, see the project's
|
|
|
|
|
[Releases][]. For more details, see the project on [Bintray][].
|
2015-12-11 01:47:03 +08:00
|
|
|
|
|
2015-12-17 04:49:19 +08:00
|
|
|
|
[Releases]: https://github.com/google/ExoPlayer/releases
|
|
|
|
|
[Bintray]: https://bintray.com/google/exoplayer/exoplayer/view
|
2015-12-11 01:47:03 +08:00
|
|
|
|
|
2015-12-17 04:49:19 +08:00
|
|
|
|
#### As source ####
|
2015-12-15 00:15:23 +08:00
|
|
|
|
|
2015-12-17 04:49:19 +08:00
|
|
|
|
ExoPlayer can also be built from source using Gradle. You can include it as a dependent project like
|
|
|
|
|
so:
|
2015-12-11 01:47:03 +08:00
|
|
|
|
|
2015-12-11 02:06:46 +08:00
|
|
|
|
```
|
2015-12-17 04:49:19 +08:00
|
|
|
|
gradle
|
2015-12-11 01:47:03 +08:00
|
|
|
|
// settings.gradle
|
|
|
|
|
include ':app', ':..:ExoPlayer:library'
|
|
|
|
|
|
|
|
|
|
// app/build.gradle
|
|
|
|
|
dependencies {
|
|
|
|
|
compile project(':..:ExoPlayer:library')
|
|
|
|
|
}
|
|
|
|
|
```
|
|
|
|
|
|
2015-12-17 04:49:19 +08:00
|
|
|
|
#### As a jar ####
|
|
|
|
|
|
2015-12-11 01:47:03 +08:00
|
|
|
|
If you want to use ExoPlayer as a jar, run:
|
|
|
|
|
|
2015-12-11 02:06:46 +08:00
|
|
|
|
```
|
2015-12-17 04:49:19 +08:00
|
|
|
|
sh
|
2015-12-11 01:47:03 +08:00
|
|
|
|
./gradlew jarRelease
|
|
|
|
|
```
|
|
|
|
|
|
2015-12-17 04:49:19 +08:00
|
|
|
|
and copy `library.jar` to the libs folder of your new project.
|
2015-12-11 01:47:03 +08:00
|
|
|
|
|
2015-12-17 04:49:19 +08:00
|
|
|
|
## Developing ExoPlayer ##
|
2015-12-11 02:06:46 +08:00
|
|
|
|
|
2015-12-17 04:49:19 +08:00
|
|
|
|
#### Project branches ####
|
|
|
|
|
|
|
|
|
|
* The [`master`][master] branch holds the most recent minor release.
|
|
|
|
|
* Most development work happens on the [`dev`][dev] branch.
|
|
|
|
|
* Additional development branches may be established for major features.
|
|
|
|
|
|
|
|
|
|
[master]: https://github.com/google/ExoPlayer/tree/master
|
|
|
|
|
[dev]: https://github.com/google/ExoPlayer/tree/dev
|
2014-06-16 19:55:31 +08:00
|
|
|
|
|
2015-12-17 04:49:19 +08:00
|
|
|
|
#### Using Android Studio ####
|
|
|
|
|
|
|
|
|
|
To develop ExoPlayer using Android Studio, simply open the ExoPlayer project in the root directory
|
|
|
|
|
of the repository.
|
|
|
|
|
|
|
|
|
|
#### Using Eclipse ####
|
|
|
|
|
|
|
|
|
|
To develop ExoPlayer using Eclipse:
|
|
|
|
|
|
|
|
|
|
1. Install Eclipse and setup the [Android SDK][].
|
|
|
|
|
1. Open Eclipse and navigate to File->Import->General->Existing Projects into Workspace.
|
|
|
|
|
1. Select the root directory of the repository.
|
|
|
|
|
1. Import the projects.
|
|
|
|
|
|
|
|
|
|
[Android SDK]: http://developer.android.com/sdk/index.html
|