Fix suppressing initial "state changed to paused" listener invocations
for new added tasks that are immediately started.
Notify listeners for loaded actions queued state if they are not started
immediately.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=196542693
The app can set the player to null while messages from the player are still
in flight. This may cause NPEs.
Issue:#4238
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=196504077
The lint error suppression only works locally and not for external developers
who still see the lint error and need to suppress it themselves.
This changes 'implementation' to 'compileOnly' in gradle to prevent the
dependency from being exported. Also removes the local lint suppression.
Issue:#4234
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=196251407
This makes way for reusing EGLSurfaceTexture in other places, such as metadata
and frame retriever.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=196240576
This is useful to get hold of the manifest to then obtain DRM init data in
the download flow for protected content (without having to download the
manifest again).
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=196168938
Open was not calling through to upstream.open. This was not problematic for
reading, because DataSourceInputStream.read would open the upstream if it's
not open already. It was however a problem for calling getUri() between
calling open and the first call to read, which would end up calling
upstream.getUri() on the not-yet-opened upstream.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=195689472
Also only listen to requirements when actually necessary, else we can
put the service into the foreground when it needn't be there.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=195597750
This type of flicker was visible (at least on my S8) whenever starting
the demo app process (from being properly killed) when other notifications
(e.g. completed download notification) was present.
This change passes whether the service was started as foreground through
the intent, and only applies the show-notification-on-stop hack if it
was. It's only necessary to start as foreground if your app is not already
in the foreground, so it's not necessary to do this from activity/ui
components.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=195594930
If an app wants to reconcile its own state with that of a DownloadManager,
it's helpful to know when the DownloadManager has finished restoring any
previously persisted tasks.
Also suppress initial "state changed to paused" listener invocations for
tasks that are immediately started.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=195594881
- Start before stop
- Release near bottom
- Private after public
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=195570480
The lint workaround and org.json exclusion aren't needed any more.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=195557066
Also convert them to exposing periods and track groups, like
regular MediaSources do. This gets us much closer to being
able to use standard track selection components during offline
initialization. The helper is responsible for reverse mapping
selected tracks onto physical streams when generating the
download action. This is trivial except for the HLS case, which
is a TODO for now.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=195500826
This may be preferable for using custom binary data,
and it's still easy to store Strings if needed.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=195486817
The old event listener on AdsMediaSource is deprecated, in favor of
reporting in the normal way (via MediaSourceEventListener).
Add AdLoadException with information on what ad/ads failed to load.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=195426144
- Support handling metadata queries (a.k.a get TrackGroupArray, which contains
Format and associated Metadata) from MetadataRetriever.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=195401204
Upstream components may incorrectly clear the interrupted flag and not
propagate an exception when the caching thread is interrupted due to
cancellation. Pass a settable flag down to CacheUtil.cache and check it
frequently so it's not necessary to rely on the interrupted flag.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=195371244
This avoids the interrupted flag being lost if the exception
is handled as an IOException.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=195366244