Latest Releases JW Player JW Platform iOS SDK Android SDK


Chromecast Improvements

Enjoy a new and improved Chromecast experience in Android 3.5! We have migrated to the latest Google Cast library unleashing more customizable options. See our Chromecast documentation for implementation details.


Release Date: May 21, 2019 (Build 72)


  • Fixed an issue where developer is unable to disable fullscreen on rotation when using JWSupportFragment.
  • Fixed an issue where SharingPluginEvents are not available for use.


Release Date: April 29, 2019 (Build 71)


  • Added a new "Experimental API" class that enables the registration of video controls that overlay the media element. Typically, these video controls are considered obstructions and reduce the viewability rate calculated by the Open Measurement SDK. Learn more about Google IMA’s Open Measurement SDK integration and how to register video controls overlay obstructions here.
  • Improved JW Player expired license user experience by adding an error message notification and halting player setup or playback
  • Added onWarning callback for non-fatal error debugging or troubleshooting purposes.


  • Fixed issue where video content restarts from the beginning after ad playback if two midrolls are scheduled for the same time position.
  • Fixed issue where video is shortly displayed before IMA VMAP preroll in playlist.
  • Fixed issue where Google IMA ads play with sound when the advertising player configuration is set to mute.
  • Fixed issue where the app crashes if related items file is not found.
  • Fixed issue where players with Chromecast buttons using Fragments lose connection to a casting session.
  • Fixed issue where the title and image are not available for playlists with related videos during a casting session.
  • Fixed issue where the parent video is casted when the user selects a related video.
  • Fixed issue where audio plays on the sender app when the casting session starts and a VAST or Freewheel ad is already in progress.

Known Issue

  • Intermittently Freewheel pre-roll VPAID ads continue to load after ad completion and prevent video playback to start. This issue will be fixed in the next Android release.


Release Date: Mar 14, 2019 (Build 70)


  • Upgraded SDK to use JW Player 8.7.3
  • Upgraded to Google IMA version 3.10.6 which includes IAB’s Open Measurement SDK that enables third-party viewability and verification measurement for ads served to mobile and desktop environments.
  • Migrated the Chromecast implementation to the latest Google Cast library (version 16.1.2). Please refer to the Chromecast documentation for implementation details.


  • Fixed an issue where some VPAID ads continue playing in background after having been skipped
  • Fixed an issue where spinner shows during content playback after VPAID ad
  • Fixed issue where player controls do not automatically hide during video playback if user clicks the pause button and then the play button after the completion of a VPAID ad
  • Fixed an issue where onAdComplete event does not fire for FreeWheel VPAID ads
  • Fixed an issue where onPause event does not fire on Android 5.1 if playback is interrupted by external actions such as phone call
  • Fixed an issue where a playlist with IMA VMAP would not switch to next items automatically
  • Fixed issue that prevents localized error messages
  • Fixed an issue where onAdRequest does not fire for the first ad instance starting from the second ad pod or when inline IMA VMAP ads are used
  • Fixed an issue where ad instances within one ad pod are missing controls when configured using IMA VMAP
  • Fixed an issue where only one onAdRequest fires for an IMA VMAP ad pod with multiple instances
  • Fixed an issue where the replay button shows before IMA VMAP post-roll
  • Fixed an issue where FreeWheel ad with relative offset plays as a pre-roll for the second playlist item or after video replay
  • Fixed an issue where AdRequestEvent does not have an offset parameter when ad is manually requested during video playback
  • Fixed an issue where callbacks fire only for the first ad instance in an ad pod