flutter_vap_player 2.1.0
flutter_vap_player: ^2.1.0 copied to clipboard
Flutter VAP player widget/controller API.
Unreleased #
2.1.0 #
- Make all scale types work consistently for platform-view and texture
renderers, including VAP v1 files that carry no
vapcconfig box. - Read the animation's size, frame count and fps from the mp4 during
initialize(), soVapPlayerValue.sizeandaspectRatiocan be used for layout before playback starts and the animation is fitted correctly from its first frame. - Only clip the renderer for
VapScaleType.centerCrop, and size it in place for the other scale types, to keep cheap layouts off the platform-view clipping path. - Preserve the renderer's identity while its metadata becomes available, so an active platform view is not recreated during layout.
- Use Flutter's Swift Package Manager integration exclusively in the iOS example project.
2.0.1 #
- Expose typed playback and interaction events through the controller's
broadcast
eventsstream.
2.0.0 #
- Breaking: replace
VapControllerand play-scoped sources/options with source-boundVapPlayerControllerconstructors, explicitinitialize(), parameterlessplay(), and a per-player lifecycle. - Breaking: expose playback through
VapPlayerValuestate and resource-click callbacks, and replace FlutterBoxFitconfiguration withVapScaleType. - Breaking: remove
VapNetworkCache; asset and network sources are now materialized to a Dart-managed local cache before native playback, with support for network request headers. - Add selectable platform-view and texture rendering. Android supports both modes; iOS falls back to a platform view for texture requests.
- Add repeat-count and mute controls, detailed config/frame/error state, iOS pause/resume, and VAPX text/image resource delegates.
1.0.0 #
- Breaking: replace
VapViewwithVapPlayer. - Breaking: replace
playAsset,playFile, andplayNetworkwith oneplay(VapSource, options:)entrypoint. - Breaking: replace mutable playback setters and separate playback/click streams with play-scoped
VapPlaybackOptionsand oneeventsstream. - Breaking: replace
VapContentMode/contentModewith FlutterBoxFitviaVapPlaybackOptions.fit. - Breaking: replace the network cache API with
info,setMaxBytes, andclear.
0.2.0 #
- Add
VapController.pause()andVapController.resume()playback controls. - Support safe
VapViewcontroller handoff at runtime and cancel pending play requests on controller detach. - Harden controller/view teardown with idempotent disposal and tolerant native view cleanup.
- Align iOS/Android resource fallback behavior and FPS request contract.
- Harden network playback path on Android and iOS with strict HTTP validation (
2xx), redirect limits (3), bounded downloads, and MP4 signature checks before cache promotion. - Document stable network playback failure codes surfaced through
VapPlaybackEvent.errorCode. - Clarify
VapNetworkCache.setAutoEvictionMaxBytesnow governs both cache eviction target and max single network download size (with a10 MiBfloor).
0.1.0 #
- Initial public release of the federated Flutter VAP plugin.
- Provides
VapViewandVapControllerAPIs for Android and iOS playback. - Supports asset, file, and network VAP sources.
- Adds VAPX tag replacement and async image resolver support.
- Adds playback, click, and error event streams.
- Adds network cache APIs (
VapNetworkCache) for size, clear, and pruning control.