Releases: feedfm/Android-SDK
7.0.1
ChangeLog
This fixes a race condition that was introduced in the most recent release of
this SDK that could cause a ConcurrentModificationException to be thrown.
We have implemented a server-side solution to prevent the bad code
from being triggered, but this release updates the SDK to permanently fix the
race condition.
Breaking changes
Nothing!
What's New
Nothing!
7.0.0
ChangeLog
Version 6 and 7 split
We are continuing to support our customers who have not opted to upgrade to the newer version of our SDK that uses the new Media3 player instead of ExoPlayer. To simplify understanding of what SDK changes apply to the Exo-based code and the Media3-based code, we’re updating our version system to be as follows:
- Version 6.* will continue to be based on ExoPlayer. Version 6.13.0 is the latest. Customers sticking with ExoPlayer should continue to monitor for the latest 6.* versions and upgrade as often as possible.
- Version 7.* will be based on Media3. Version 7.0.0 is the first release with this new numbering scheme. Customers using Media3 should continue to monitor for the latest 7.* versions and upgrade as often as possible.
Customers who do not use ExoPlayer outside of the Feed SDK (either directly or through 3rd party libraries) should migrate to version 7 immediately, as it uses newer Google SDKs with better support and compatibility. The updated Feed SDK only requires you to make the following changes to your code:
- the
FMLogandLogLevelclasses have been moved fromfm.feed.android.playersdktofm.feed.android.playersdk.logs - the
FeedFMError,PlayerError,FeedException, andApiErrorEnumclasses have been moved fromfm.feed.android.playersdktofm.feed.android.playersdk.error
If your application does use ExoPlayer outside of the Feed SDK, we encourage you to check out Google’s introduction to Media3 and their extensive migration support.
Version History Breakdown
- 6.10 - until now, this was the most up-to-date version of our SDK based on ExoPlayer.
- 6.11, 6.12, 6.12.2 were released with Media3 and are now deprecated and merged into 7.0
Latest Releases
What's New in 7.0.0
This release is the same as 6.12.2. If you have been using 6.11, 6.12, or 6.12.2, then you should upgrade to this version 7.0.0 release.
v6.13.1
ChangeLog
This fixes a race condition that was introduced in the most recent release of
this SDK that could cause a ConcurrentModificationException to be thrown.
We have implemented a server-side solution to prevent the bad code
from being triggered, but this release updates the SDK to permanently fix the
race condition.
Breaking changes
Nothing!
What's New
Nothing!
6.13.0
ChangeLog
This updates version 6.10 of our SDK, which is based on ExoPlayer, to bring it up to par with the Media3 version of our SDK (previously 6.12.2, now version 7.0.0).
We recommend all customers who where previously using 6.10 and earlier and who cannot upgrade to version 7 (because of other dependencies on ExoPlayer), to update to this release.
Breaking changes
None!
What's New
-
A fix to the 'retry' code that reports the start and end of song playback to the feed API servers. The code wasn't correctly retrying all failed requests which could lead to playback stopping in certain circumstances.
-
Improved handling of a race condition that occurs when marking a track as completed and requesting the next track
-
A bugfix in the song request error handler that might attempt to 'resume' a suspended coroutine twice, leading to a crash.
-
An update to the parameter name under which offline playback events are sent to our API servers.
6.12.2 - deprecated
Version 6.12.2 is deprecated. The changes in this release have been folded into 7.0.0, to clarify that this code uses Media3 rather than ExoPlayer.
ChangeLog
This release fixes two bugs that might cause music playback to stop or your
app to crash. We recommend all customers upgrade to this release.
Breaking changes
None!
What's New
No new functionality.
Bug Fixes
-
A fix to the 'retry' code that reports the start and end of song playback to the
feed API servers. The code wasn't correctly retrying all failed requests which
could lead to playback stopping in certain circumstances. -
Improved handling of a race condition that occurs when marking a track as completed
and requesting the next track -
A bugfix in the song request error handler that might attempt to 'resume'
a suspended coroutine twice, leading to a crash.
6.12.1
6.12.0 - deprecated
Version 6.12.0 is deprecated. The changes in this release have been folded into 7.0.0, to clarify that this code uses Media3 rather than ExoPlayer.
ChangeLog
Breaking changes
- This update may break some apps if they import FeedFMError or PlayerError as the package directory has changed for these classes. To fix the build errors delete the offending import statements and re-import the classes from the SDK. The new package directory for errors is fm.feed.android.playersdk.error.FeedFMError or fm.feed.android.playersdk.error.PlayerError
What’s New
- Enhanced logging that will help us in identifying and solving issues any end users might encounter with music playback or FeedSDK integration.
6.11.0 - deprecated
Version 6.11.0 is deprecated. The changes in this release have been folded into 7.0.0, to clarify that this code uses Media3 rather than ExoPlayer.
ChangeLog
What’s New
- Update to Media3 (1.4.0) library
- Removed exoplayer and its dependencies
- Different Flavours for exoplayer are no longer published
6.10.0
ChangeLog
What’s New
- Bulk Station Search
- Mock Location Testing
Bulk Station Search
- We've added a new search function which will return all stations matching any of the supplied parameters. This is more useful for doing broad searches vs. the existing search function which does an intersection search for more precise queries.
- See searchForStations() method in FeedAudioPlayer for more details on usage.
Mock Location Testing
- To better facilitate testing for multiple locations, we’ve created a new setStreamingFor() method. This method allows you to pass an IP address for a US, UK, CA, MX, or AU to test your implementation in those countries.
- setMockLocation() has been deprecated