media/library
andrewlewis 6c3b677ddb Catch exceptions in all IMA callbacks
If an exception is thrown in an IMA callback it crashes the process with lots of
logging from WebView (including several stack traces, etc.). This change wraps
ImaAdsLoader code that might throw, skips any remaining ads (as the errors are
not recoverable, in general) and notifies a new load error callback so that the
application can implement its own handling. The intention is to make the loader
robust to unexpected requests from IMA and avoid crashes.

Also handle IMA loading an ad in an ad group that has no available ads. In rare
cases IMA will try to load an ad for which an error was previously notified, so
this drops those load requests allowing playback of the content to continue.

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=185985850
2018-02-19 13:20:15 +00:00
..
all Tweak and add READMEs + remove refs to V1 2017-08-17 22:59:34 +01:00
core Catch exceptions in all IMA callbacks 2018-02-19 13:20:15 +00:00
dash Run DownloadManager on a custom thread while testing 2018-02-16 12:02:36 +00:00
hls Add initial support for EXT-X-GAP 2018-02-16 12:03:49 +00:00
smoothstreaming Fix SmoothStreaming manifest url for downloading 2018-02-16 11:51:19 +00:00
ui Translation console import 2018-02-16 11:47:49 +00:00
README.md Tweak and add READMEs + remove refs to V1 2017-08-17 22:59:34 +01:00

ExoPlayer library

The ExoPlayer library is split into multiple modules. See ExoPlayer's top level README for more information about the available library modules and how to use them.