bb_player 8.53.0
bb_player: ^8.53.0 copied to clipboard
Flutter plugin for Blue Billywig's native video player SDK. Provides hardware-accelerated playback with VAST/VPAID ads, analytics, Chromecast, Picture-in-Picture, fullscreen, outstream, and Shorts (ve [...]
8.53.0 #
- Android: switched
BBPlayerViewto true Hybrid Composition (initExpensiveAndroidView) instead of Texture Layer Hybrid Composition. Taps on the native control-bar buttons (settings / fullscreen) in the channel detail player were being swallowed under TLHC's synthesised touch dispatch; Hybrid Composition routes touches natively to the embedded views. Also the correct mode for the player'sSurfaceViewoutput (required for 10-bit / HDR / secure playback). - Android: bumped the native player SDK floor to
8.52.+(was8.50.+). BB native SDK 8.52 (PR #512) widened the player's host-activity check fromAppCompatActivitytoFragmentActivity, so the settings / track BottomSheet now shows under Flutter'sFlutterFragmentActivityhost. On 8.50.x the sheet silently never appeared (tap registered, no panel).
8.50.0 #
- Switched the package version to follow BB sprint release logic — the
minor track now aligns with the BB native SDK (8.50.x for SDK 8.50). The
previous v1.0.0 has been superseded; consumers should pin
bb_player: ^8.50.0. - Bumped native SDKs to 8.50.0 (iOS) and 8.50.+ (Android), aligning with the latest Blue Billywig native player kits.
- Reach parity with
react-native-bb-player's public API surface:LoadContextparameter on everyloadWith*method (contextEntityType / contextEntityId / contextCollectionType / contextCollectionId).loadWithContentIdAndTypecanonical loader withBBContentTypeenum (mediaclip/c,mediacliplist/l,project/p/pj).- New
BBPlayerControllermethods:setInView,unload,updatePlayout,presentModal,closeModal,endCastSession. - New getters:
getInView,getAdMediaWidth,getAdMediaHeight,getIsCasting,getCastDeviceName. BBCastButtonandBBCastMiniControlswidgets (render an empty placeholder when the host activity isn't aFragmentActivityor the Cast SDK isn't linked).- Module-level
BBModalPlayerAPI (present/dismiss/addEventListener). addCastSessionListenerfor global Cast session events.convertPlayoutUrlToMediaclipUrlutility.
BBShortsViewOptionsnow accepts a typedBBShortsDisplayFormat(full/list/player),shelfStartSpacing,shelfEndSpacing, andskipShortsAdOnSwipe.BBOutstreamView: added real spring physics (damping/stiffness),none/layoutanimation types,isCollapsedgetter, andanimateCollapse/animateExpandaliases.- Example app restructured into per-feature screens mirroring the React
Native demo: Simple Player → API Reference → Shorts → Outstream Ads →
Modal Player. Deep-link handler (
bbplayer://watch/<id>) included. - Docs split into per-feature guides under
doc/guides/. - Android: bumped to Kotlin 2.3.10 and enabled core-library desugaring (required by BB SDK 8.50+).
- iOS: marked platform-view classes
@MainActorfor Swift 6 strict concurrency.
Breaking #
- Apps using
BBCastButton(or anything that mounts the Cast picker) must useFlutterFragmentActivityas the host activity (not the defaultFlutterActivity). Seeexample/android/.../MainActivity.kt.
1.0.0 #
- Initial release
- BBPlayerView widget for video playback
- BBShortsView widget for vertical video (TikTok-style)
- BBOutstreamView widget for animated outstream ad placements
- Full playback controls (play, pause, seek, volume, fullscreen)
- 40+ event callbacks for playback, ads, analytics
- Async state queries (duration, currentTime, clipData, etc.)
- Content loading via clip ID, clip list, project, or JSON URL
- iOS support via BBNativePlayerKit (8.42.0)
- Android support via bbnativeplayersdk (8.42.+)
- Chromecast support on both platforms