mirror of
https://github.com/samsonjs/media.git
synced 2026-04-07 11:35:46 +00:00
The current code flags a lint error:
```
Error: Call requires API level 24 (current min is 16): java.lang.Iterable#forEach [NewApi]
```
I think this is a bit confusing because this is calling the Java
[`Iterable.forEach`](https://developer.android.com/reference/java/lang/Iterable#forEach(java.util.function.Consumer%3C?%20super%20T%3E))
method which was added in Java 8 (and therefore is only available on
API 24 and up), but there is **also** a Kotlin
[`List.forEach`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/for-each.html)
method which is available in all versions of Kotlin (and therefore all
Android versions). Since this is a Kotlin file, at first glance you
would assume this is the Kotlin method - but it's not.
This also doesn't seem to be flagged by Android Studio, but is caught
by Gradle lint on the command line.
#minor-release
PiperOrigin-RevId: 529112610
(cherry picked from commit
|
||
|---|---|---|
| .. | ||
| cast | ||
| gl | ||
| main | ||
| session | ||
| surface | ||
| transformer | ||
| README.md | ||
Demos
This directory contains apps that demonstrate how to use Android media modules, like ExoPlayer. Browse the individual demos and their READMEs to learn more.
Running a demo
From Android Studio
- File -> New -> Import Project -> Specify the root
mediafolder. - Choose the demo from the run configuration dropdown list.
- Click Run.
Using gradle from the command line:
- Open a Terminal window at the root
mediafolder. - Run
./gradlew projectsto show all projects. Demo projects start withdemo. - Run
./gradlew :<demo name>:tasksto view the list of available tasks for the demo project. Choose an install option from theInstall taskssection. - Run
./gradlew :<demo name>:<install task>.
For example, ./gradlew :demo:installNoDecoderExtensionsDebug installs the
ExoPlayer demo app in debug mode with no optional modules.