You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This commit was created on GitHub.com and signed with GitHub’s verified signature.
Added
Search and set active station: new FeedAudioPlayer.searchForAndSetActiveStation(...) API with searchTimeout/prepareTimeout parameters (default 5000 ms each) and a SearchAndSetActiveStationCallback (onSuccess/onError). New StationSearch query model and StationSearchType enum (RADIO, FIRST_PLAY, REPLAY) allow type-, offset-, and MongoDB-style-filter searches; the response's start_at offset metadata is applied to the resulting play.
New PlayerError cases: SEARCH_TIMEOUT (1005), PREPARE_TIMEOUT (1006), and STATION_CHANGE_IN_PROGRESS (1007).
Network throttling: new FeedAudioPlayer.setNetworkThrottleEnabled(...) toggle backed by a new ThrottledHttpDataSource for chunked network throttling with redirect handling and timeouts.
Network-aware retries: session calls and playCompleted retries now wait for network availability; ConnectionMonitor ownership moved to FeedAudioPlayer and gained a DNS reachability check.
Resource gating: disk/memory usage collected in session events and used to gate playback when device storage/memory is low.
x-feed-os-version header now included everywhere device/SDK/platform headers are sent (also in session events).
Changed
Station.options is now mutable (var instead of val).
Default station-search timeout values extended.
Bumped OkHttp okhttp and logging-interceptor 4.9.0 → 4.12.0.
Fixed
play() now proceeds without a network connection when the requested item is already queued.
Station, AudioFile, and PlaytoString() no longer throw when their lateinit fields are uninitialized.
Listener cleanup moved to finally blocks; don't drop listeners on onPlayerUnavailable.