Skip to main content

One post tagged with "vast"

View All Tags

Client-Side Video Ads in Flutter: VAST and VMAP with Better Player Enterprise

· 4 min read
Jakub Homlala
Senior Mobile Engineer

Most video ad integrations in Flutter wrap native platform SDKs (like Google IMA) inside platform views (AndroidView and UiKitView). That approach causes two persistent headaches:

  1. The buffer drop: When a mid-roll ad starts, the platform view mounts over Flutter's canvas. The underlying media player often dumps its decoded buffers to reclaim GPU memory. Once the ad finishes, your user sits staring at a black screen or spinner while the main video re-buffers from scratch.
  2. Platform fragmentation: Native wrappers pull in complex Gradle and CocoaPods dependencies that break during Flutter upgrades, and they do not compile at all on Flutter Web or Desktop.

In better_player_enterprise, we replaced native SDK wrappers with a pure-Dart VAST and VMAP ad engine. It runs across Android, iOS, Web, macOS, Windows, and Linux without native ad dependencies.