flutter_omni_kit 0.0.21
flutter_omni_kit: ^0.0.21 copied to clipboard
A comprehensive, production-grade collection of Flutter media widgets, document previewers, and Dart extension methods designed specifically for real-world app development.
0.0.21 #
- Suppressed remaining static analysis lints on pub.dev for
LockCachingAudioSourceandConnectivityResulttype comparisons to achieve perfect 130/130 score.
0.0.20 #
- Updated dependency constraints to explicitly support the absolute latest package versions, ensuring 130/130 score on pub.dev while retaining robust backwards compatibility for local Flutter SDKs.
- Formatted all package code and resolved all static analysis lints to meet strict pub.dev scoring criteria.
0.0.19 #
- Added a seamless
useGlassEffecttoggle to bothOmniAudioPlayerandOmniVideoPlayerfor an iOS-like frosted glass aesthetic, automatically integrating withOmniGlassCard.
0.0.18 #
- Implemented
LockCachingAudioSourcefor all network URLs to force native playback proxying. This bypasses missing HTTP headers on remote servers, instantly capturing the total duration ininitStateand fully unlocking Spotify-style slider seeking for ALL servers.
0.0.17 #
- Implemented a "Spotify-style" smooth slider that caches the drag value and only seeks the native player
onChangeEnd. This completely eliminates playback stuttering and buffering loops when dragging the slider. - The slider
maxvalue now expands seamlessly using the stream'sbufferedPositionwhen the total duration is unknown, allowing users to scrub forward into dynamically downloaded content.
0.0.16 #
- Added continuous internal polling for duration updates to correctly support servers that omit the
Accept-RangesorContent-Lengthheaders. - Fixed a bug where missing duration metadata caused the seekbar thumb to be stuck at 100%.
0.0.15 #
- Simplified audio player architecture by reverting to standard state variables (
_duration,_position) for guaranteed UI refresh with each audio tick. - Improved drag/seek performance in the audio slider.
0.0.14 #
- Fixed a critical connection leak in the background media validation isolate that prevented audio from loading.
- Made the audio seekbar robust against 0-duration streams to prevent assertion errors.
- Added a visual error icon to the audio player UI if the stream fails to load.
0.0.13 #
- Refactored
OmniAudioPlayerto use a professionalPositionDatastream pattern withrxdart. - Fixed duration sniffing for servers that omit the
Content-Lengthheader (likesamplelib). - Added buffering/loading spinners to the audio UI.
0.0.12 #
- Major Upgrade: Switched audio engine to
just_audiofor professional-grade streaming reliability. - Fixed duration detection once and for all (metadata now fetches almost instantly).
- Added buffering/loading indicators to the audio player UI.
0.0.11 #
- Updated example audio to a longer, high-quality stream for better seeking and UX testing.
0.0.10 #
- Implemented "Aggressive Duration Fetching" in
OmniAudioPlayerto resolve00:00duration on some devices. - Switched example streams to W3Schools test files for maximum cross-platform compatibility.
0.0.9 #
- Fixed iOS
CoreMediaerror-12939(byte range length mismatch) by updating example streams to high-performance Google Cloud buckets. - Enhanced
OmniAudioPlayerduration detection by forcing a refresh on play. - Updated
example/main.dartwith a complete, modern showcase application.
0.0.8 #
- Updated
OmniAudioPlayerto use the modernUrlSourceAPI (fixing playback and duration issues). - Added detailed error reporting to
OmniVideoPlayerUI for easier debugging of network/native issues.
0.0.7 #
- Fully resolved
unsendable objectcrash by refactoring isolate calls into static methods, ensuring no state capturing occurs.
0.0.6 #
- Fixed
00:00duration issue inOmniAudioPlayerby adding a manual duration fetch fallback. - Improved
useBackgroundValidationcompatibility by usingGETheaders instead ofHEADrequests. - Made background validation non-blocking to allow native player fallbacks.
0.0.5 #
- Fixed
unsendable objectcrash when usinguseBackgroundValidation: true. Improved isolate memory safety by avoiding state capturing.
0.0.4 #
- New UI Components:
OmniGlassCard: A modern glassmorphism container.OmniShimmer: Easy-to-use skeleton loading animations (ListTile, Circular, Rectangular).
- New Infrastructure Utilities:
OmniNetwork: Simplified API client (Dio wrapper) with connectivity checks.OmniStorage: A clean "one-liner" local storage solution (SharedPreferences wrapper).
0.0.3 #
- Added
useBackgroundValidation(Isolate-based) toOmniVideoPlayerandOmniAudioPlayerto validate media URLs/paths in the background and prevent main-thread jank.
0.0.2 #
- Added extensive customization options (colors, placeholders, error builders) to
OmniVideoPlayer,OmniAudioPlayer, andOmniFilePreviewer.
0.0.1 #
- Initial version.