Changelog
1.23.5
- Added play integrity support for media download.
1.23.4
- Bugfix - Added PlatformSchedulerService for media3
1.23.3
- Adding cross platform resume.
1.23.2
- Bug fix - Conflict of media3 PlayerView with exoplayer.
1.23.1
- Bugfix - Fixed the Exoplayer version mismatch error (Error 1203) coming while loading a player in release apk.
1.23.0
- Updated
DownloadStatus
object to include displayable title and description provided while downloading a video. - Added default player controls in case an error occurs while loading controls
- Bug Fixes -
- Fixed an issue where the download query filter by status was not functioning correctly.
- Resolved the problem of native controls not being displayed for certain videos.
1.22.5
- Error message upon transitioning from idle to playing state has been eliminated.
1.22.4
- Migrated to AndroidX Media3 from ExoPlayer.
- Displaying video tracks according to device capabilities.
1.22.3
- Showing media title with download progress notification.
- Bug fix -
NoSuchMethodError
forWindowInsets.getDisplayCutout()
.
1.22.2
- Bug fixes -
- Removed usage of non-sdk API onApplyWindowInsets.
- Handling NullPointerException with DlServiceSpec.fromJSONString().
1.22.0
- Added option to get description from
DownloadStatus
. - Resolved the problem where the player UI control's transparent background was not visible.
- Resolved the problem where the video was started from beginning after an error occurs.
- Incorporated 5114 as retryable error code.
1.21.2
- Backport version with exoplayer dependency v2.19.1
- Latest changes and fixes picked from version 1.22.5 excluding Media3.
1.21.1
- Instead of invoking pack-up, we now pause the player to avoid reloading of the player.
- Bug fixes -
- Fixed download notification causing crash when started in background.
- Fixed NullPointer exception when updating speed
1.21.0
- Added support for
windowLayoutInDisplayCutoutMode
with inbuilt player UI. - Improved feedback of double tap to skip forward and backward.
- Implemented fullscreen behavior with video in portrait and landscape mode.
- Fullscreen Changes for Player UI:
- Fixed auto rotate lock while going into fullscreen mode.
- Implemented fullscreen behavior based on aspect ratio:
- Vertical videos will go fullscreen in portrait mode.
- Horizontal videos will go fullscreen in landscape mode.
- Added APIs
enterFullScreen
andexitFullScreen
to enter or exit fullscreen inVdoPlayerUIFragment
. - Added
FullScreenActionListener
to monitor when video enters or exits fullscreen. The listener can be set using the methodsetFullscreenActionListener
ofVdoPlayerUIFragment
.
- Added API to expose
playerOption
. - Added support for handling fullscreen for custom back press implementation
- The import path for
VdoParamsGenerator
has been modified.
Note: If the enterFullScreen
or exitFullScreen
method is called from onConfigurationChanged
, the video goes into fullscreen but the orientation needs to be handled manually.
1.19.7
- Added support for play integrity.
- Fixed concurrency issue with offline download.
1.19.6
- Added support to conserve player config across session.
- Reduce watermark text size proportionately for a smaller screen.
- Bug fixes -
- Releasing media session when player stops.
- Showing "Tap to retry" only when error message is retry-able with the built-in player ui.
- Going to PiP closes the bottom sheet and dialogs with the built-in player ui.
1.19.4
- Upgraded exoplayer dependency to 2.18.5
- Added view overlay for fullscreen and picture in picture.
- Bug fixes
1.19.2
- Bug fix - Incorrect
MediaInfo.duration
withDownloadStatus
.
1.19.1
- Changed exoplayer data source configurations.
1.19.0
- VdoPlayerUIFragment now has an option to disable default controls.
- Pinch to zoom is now supported with VdoPlayerUIFragment default controls.
- The player resize mode can now be modified.
- Added support for downloading media without audio.
- Upgraded exoplayer dependency to 2.18.2
- Bug fixes.
1.18.2
- Minor Improvements
1.18.1
- Added support for Chromecast.
1.17.0
- Added support for picture in picture mode.
- Added callback for persistent OTP with save offline.
- Updated CompileSdkVersion from API level 31 to 33.
- Updated TargetSdkVersion from API level 30 to 32.
- Vdocipher cast module moved into core module. Cast module dependency no longer needs to be specified separately.
- Removed jcenter due to deprecation.
- Fixed memory leaks.
1.16.0
Fixed audio issues with offline playback.
Changed signature of
OptionsDownloader
. Context is now required for the instantiation ofOptionDownloader
.OptionsDownloader optionsDownloader = new OptionsDownloader(context); //Pass context here.
Fixed
VdoDlService
memory leak.
1.15.1
- Code optimisation and refactoring
1.15.0
Bug fixes related to HLS playback
First call to
onBackPressed()
is handled byVdoPlayerUIFragment
to manage player orientation and state then subsequent calls are passed to attached activity.Option to disable initital handling of
onBackPressed()
inVdoPlayerUIFragment
by settingapp:handleBackPress="false"
. This can be used to handle all back press action in activity.<fragment
android:name="com.vdocipher.aegis.ui.view.VdoPlayerUIFragment"
....
app:handleBackPress="false" //by default it's true
/>
1.14.2
- Added support for TV applications in
VdoPlayerUIFragment
1.14.1
- Fixed issue with caption selection
- Increased gesture area for double tap in
VdoPlayerUIFragment
- Added migrations for database changes across SDK
1.14.0
- Player UI enhancements
- Fixed issue with clear storage option in
VdoPlayerUIFragment
1.13.1
- Player UI enhancements
- Multiple download issue fixed
- Upgraded exoplayer dependency to 2.18.1
- Bug fixes
1.13.0
- New
VdoPlayerUIFragment
with built-in player controls- Option to enable or disable player controls
- Media can be saved and streamed locally
- Bug fixes
1.12.1
- Adaptive playback bug fix
1.12.0
- Upgraded exoplayer dependency to 2.18.0
- Added caption support for offline playback
- Added option in VdoInitParams to resume video from last playback position
- Added callback to provide an event to resume from saved seek position
- Bug fixes
1.11.0
- Upgraded exoplayer dependency to 2.17.1
- Implemented offline downloads using exoplayer
- Added feature to download content in external storage
- Use
VdoDownloadManager.getInstance(@NonNull Context context, @Nullable String downloadLocation)
withDownloadRequest.Builder(@NonNull DownloadSelections selections)
andvdoDownloadManager.enqueueV2(@NonNull DownloadRequest downloadRequest)
to use new download implementation
- Provided option for customising download notification helper
- Added feature to search using selected caption
- Added feature to set default caption
- Enhanced watermark feature
- Bug Fixes
Note -
- If video download is paused and download location is changed, the half downloaded content needs to be removed manually from device storage and download should be restarted.
- In case of re-downloading a video, existing file is removed and downloaded again with new selected tracks
1.10.1
- Fix
Track
classequals()
andhashCode()
- Bug fixes
1.10.0
- Update minSdkVersion to 18. Apps depending on this version will need to set a minSdkVersion of 18 or above
- Fix PlaybackEventListener#onBufferUpdate callback not being called
- Move VdoInitParams, PlayerHost and related classes to top level classes
- Class name changes are:
VdoPlayer.PlayerHost
-->PlayerHost
VdoPlayer.InitializationListener
-->PlayerHost.InitializationListener
VdoPlayer.PlayerHostNotReadyException
-->PlayerHost.PlayerHostNotReadyException
VdoPlayer.VdoInitParams
-->VdoInitParams
1.9.0
- Upgrade exoplayer dependency to 2.14.2
- Restore track selections on player restore
- Bug fixes
1.8.1
- Option to block devices with ABD debugging on
- Bug fixes
1.7.3
- Upgrade exoplayer dependency to 2.12.3
- Regular security and bug fix updates
1.7.2
- Upgrade exoplayer dependency to 2.11.8
- Add api to get device's analytics ID on vdocipher logs for error handling
- Bug fixes.
1.7.1
- Add option in VdoInitParams to turn off playback analytics collection.
- Disable auto backup of downloaded offline video index.
- Add error code for the case when a requested offline video is not found on the device.
- Bug fixes.
1.6.0
- SafetyNet Implementation for security enhancements
1.5.0
- Offline Download Video Watermark addition
1.4.0
- Bug fixes
- Added Cast plugin dependencies
1.3.1
- Further classify generic errors so they are easier to debug.
- Bug fixes
1.2.0
- Implemented Watermark Skip Behaviour
- Bug fixes
1.1.0
- Some generic error codes have been replaced with more informative specific ones.
- Bug fixes.
1.0.1
- New sdk available for Google Cast support; integration instructions and demo provided in sample app on github
- Added support to specify resume time and autoplay behavior in VdoInitParams
- Added support-library based player fragment
- Improved offline playback compatibility
- Bug fixes.
1.0.0-beta5
- Fixed delayed query results for offline downloads.
- Fixed unreliable deletion for offline downloads.
- Updated to new gradle dependency configurations.
- Bug fixes.
1.0.0-beta4
- Added api to specify start and end time for playback in VdoInitParams.
- Additional error information, when applicable, is available in DownloadStatus#reasonDescription, which can be parsed as a json to obtain details.
- Bug fixes.
1.0.0-beta1
- Added api to easily set and query adaptive mode.
- Finer permission denial error codes and messages.
- Bug fixes.