nestads_sdk_flutter_plugin 0.1.5 copy "nestads_sdk_flutter_plugin: ^0.1.5" to clipboard
nestads_sdk_flutter_plugin: ^0.1.5 copied to clipboard

Official NestAds SDK for Flutter. Banner, popup, and splash ads with native Android and iOS integration.

Changelog #

0.1.5 #

  • Production release on the 2.13 native SDK series.
  • Android: com.nestads:nestads-sdk-android:2.13.2 from https://nexus.wisebirds.ai/repository/releases/.
  • iOS (SPM): nestads-ios-sdk at 2.13.1 from https://github.com/wisebirds/nestads-ios-sdk.
  • iOS (CocoaPods): the vendored Frameworks/NestAdsSDK.xcframework is the PRD 2.13.1 build (sync via tool/sync-prd-xcframework.sh 2.13.1).
  • Breaking — typed NestAdsTargeting: the free-form targeting: Map<String, dynamic>? parameter on NestAdsBanner / NestAdsPopup is replaced with targeting: NestAdsTargeting?. The new class exposes typed fields (country, language, gender, age, publisherProvidedId, customTargeting, audienceParameters, plus platform-specific appVersion iOS-only / httpTimeoutMillis Android-only). Wire format (Map of the same keys) is unchanged so native factories are unaffected.
  • New: NestAdsGender { unknown, male, female } enum on NestAdsTargeting.gender (replaces magic int / string values).
  • New: NestAdsSplash now exposes targeting: NestAdsTargeting? — previously the widget had no way to forward targeting even though the native factories already supported it.

0.1.5-dev.2 #

  • DEV build of nestads_sdk_flutter_plugin. Not for production.
  • Breaking — typed NestAdsTargeting: the free-form targeting: Map<String, dynamic>? parameter on NestAdsBanner / NestAdsPopup is replaced with targeting: NestAdsTargeting?. The new class exposes typed fields (country, language, gender, age, publisherProvidedId, customTargeting, audienceParameters, plus platform-specific appVersion iOS-only / httpTimeoutMillis Android-only). Wire format (Map of the same keys) is unchanged so native factories are unaffected.
  • New: NestAdsGender { unknown, male, female } enum on NestAdsTargeting.gender (replaces magic int / string values from the old Map).
  • New: NestAdsSplash now exposes targeting: NestAdsTargeting? — previously the widget had no way to forward targeting even though the native factories already supported it.

0.1.5-dev.1 #

  • DEV build of nestads_sdk_flutter_plugin. Not for production.
  • Android: com.nestads:nestads-sdk-android:2.13.2-SNAPSHOT from https://nexus.wisebirds.ai/repository/snapshots/.
  • iOS (SPM): nestads-sdk-ios-package at 2.13.1-dev from https://bitbucket.org/wisebirds/nestads-sdk-ios-package.
  • iOS (CocoaPods): the vendored Frameworks/NestAdsSDK.xcframework is the DEV 2.13.1 build (sync via tool/sync-dev-xcframework.sh 2.13.1-dev after each native SDK bump).
  • New: NestAdsBanner.collapseOnFailure — when true, the slot collapses to SizedBox.shrink after onAdFailedToLoad and re-expands automatically when the host calls controller.loadAd().
  • New: loadMode: NestAdsLoadMode.auto | .manual on banner / popup / splash widgets — manual skips the implicit initial load so the host can trigger it via controller.loadAd() (mirrors the nestads-sdk-kmp <nestads-ad load-mode> web component convention).
  • New: NestAdsPopupOptions.backgroundType (Android only) — selects whether the server-provided background color or the backgroundColor field wins (AUTO vs CUSTOM). iOS has no equivalent and silently ignores the field.
  • Internal: shared parser utilities (PluginUtils.kt / PluginUtils.swift) consolidate duplicate parseInt / parseDouble / parseBool / findLifecycleOwner / parseAdSize / parseBackgroundType helpers across all factories.
  • Internal: dead code cleanup — removed unused findImageView / collectLargestImageView from iOS banner factory; banner now uses intrinsicContentSize for all ad sizes. Removed unused logToDart from iOS banner / popup factories.

0.1.4 #

  • First production release on the 2.13 native SDK series.
  • Android: com.nestads:nestads-sdk-android:2.13.2 from https://nexus.wisebirds.ai/repository/releases/.
  • iOS (SPM): nestads-ios-sdk at 2.13.1 from https://github.com/wisebirds/nestads-ios-sdk.
  • iOS (CocoaPods): the vendored Frameworks/NestAdsSDK.xcframework is the PRD 2.13.1 build (sync via tool/sync-prd-xcframework.sh 2.13.1).
  • Breaking — splash unified: NestAdsWideSplash widget / controller / options removed. The single NestAdsSplash widget now handles both legacy SPLASH and wide (image / video) responses; the native side routes by response type. Wide-only callbacks (onBackgroundColorReady, onVideoStarted, etc.) are exposed on the same widget.
  • Breaking — popup button options grouped: 8 flat left/rightButton{FontName,FontColor,Color,BorderColor} fields collapsed into typed NestAdsPopupButtonOptions referenced as leftButton / rightButton. Wire format unchanged so native factories are unaffected.
  • Breaking — explicit SDK initialization: native auto-init removed from plugin attach (Android) and registration (iOS). Host apps must call NestAdsService.initialize() (or initializeIgnoringErrors()) before mounting any ad widget.
  • Breaking — NestAdsAdSize.fluidContain removed: native banner / splash factories already auto-route Dart FLUID to the SDK's FLUID_CONTAIN (Android 2.13.1+ / iOS NestAdsSizeType.fluidContain), so exposing both was redundant. Wire format simplifies to 'FLUID' / 'FILL' / 'FIXED'. The isFluidContain getter is removed.
  • New: typed NestAdsBannerOptions (replaces free-form Map), NestAdsBackgroundType enum.
  • New: NestAdsBanner.collapseOnFailure — when true, the slot collapses to SizedBox.shrink after onAdFailedToLoad and re-expands automatically when the host calls controller.loadAd().
  • New: loadMode: NestAdsLoadMode.auto | .manual on banner / popup / splash widgets — manual skips the implicit initial load so the host can trigger it via controller.loadAd() (mirrors the nestads-sdk-kmp <nestads-ad load-mode> web component convention).
  • New: NestAdsErrorReporter utility for reporting host-callback exceptions, plus a NestAdsEnvironment config. Plugin gains crypto, encrypt, http runtime deps.
  • Android: unified splash factory under a single NestAdsSplashViewFactory (the wide factory file removed). Lifecycle-owner propagation via findViewTreeLifecycleOwner so platform-view ad views get visibility-tracked impressions.
  • Banner / popup / splash: host-callback dispatch wrapped in try/catch so a throwing consumer callback no longer wedges the method channel.
  • Internal: shared parser utilities (PluginUtils.kt / PluginUtils.swift) consolidate duplicate parseInt / parseDouble / parseBool / findLifecycleOwner / parseAdSize helpers across all factories.

0.1.4-dev.2 #

  • DEV build of nestads_sdk_flutter_plugin. Not for production.
  • Breaking — NestAdsAdSize.fluidContain removed: native banner / splash factories already auto-route Dart FLUID to SDK FLUID_CONTAIN (Android 2.13.1+ / iOS NestAdsSizeType.fluidContain), so exposing both was redundant and confusing. Picking fluidContain explicitly never produced different behavior than fluid. The wire format simplifies to 'FLUID' / 'FILL' / 'FIXED'. The isFluidContain getter is removed accordingly.
  • iOS splash factory: removed dead case "FLUID_CONTAIN" branch (no longer reachable since Dart can't produce that wire string).

0.1.4-dev.1 #

  • DEV build of nestads_sdk_flutter_plugin. Not for production.
  • Android: com.nestads:nestads-sdk-android:2.13.2-SNAPSHOT (unchanged).
  • iOS (SPM): nestads-sdk-ios-package at 2.13.1-dev (unchanged).
  • Breaking — splash unified: NestAdsWideSplash widget / controller / options removed. The single NestAdsSplash widget now handles both legacy SPLASH and wide (image / video) responses; the native side routes by response type.
  • Breaking — popup button options grouped: 8 flat left/rightButton{FontName,FontColor,Color,BorderColor} fields collapsed into typed NestAdsPopupButtonOptions referenced as leftButton / rightButton. Wire format unchanged so native factories are unaffected.
  • Breaking — explicit SDK initialization: native auto-init removed from plugin attach (Android) and registration (iOS). Host apps must call NestAdsService.initialize() (or initializeIgnoringErrors()) before mounting any ad widget.
  • NestAdsAdSize is now backed by a NestAdsAdSizeType enum internally — wire format ('FLUID' / 'FILL' / 'FIXED') preserved. The Dart fluidContain value has been removed: native factories already auto-route FLUID → SDK FLUID_CONTAIN on platforms that support it, so exposing both was redundant.
  • Banner: typed NestAdsBannerOptions (was free-form Map). Adds NestAdsBackgroundType enum.
  • Android: unified splash factory under a single NestAdsSplashViewFactory (the wide factory file removed).
  • New: NestAdsErrorReporter utility for reporting host-callback exceptions, plus a NestAdsEnvironment config. Plugin gains crypto, encrypt, http runtime deps.
  • Banner: host-callback dispatch wrapped in try/catch so a throwing consumer callback no longer wedges the method channel.

0.1.3-dev.1 #

  • DEV build of nestads_sdk_flutter_plugin. Not for production.
  • Android: com.nestads:nestads-sdk-android:2.13.2-SNAPSHOT from https://nexus.wisebirds.ai/repository/snapshots/.
  • iOS (SPM): nestads-sdk-ios-package at 2.13.1-dev from https://bitbucket.org/wisebirds/nestads-sdk-ios-package.
  • iOS (CocoaPods): the vendored Frameworks/NestAdsSDK.xcframework is the DEV 2.13.1 build (sync via tool/sync-dev-xcframework.sh 2.13.1-dev after each native SDK bump).
  • Splash: split simple/wide cleanly — NestAdsSplash is image-only on both platforms (no video callbacks/options); video belongs to NestAdsWideSplash.
  • Android: lifecycle-owner propagation via findViewTreeLifecycleOwner so platform-view ad views get visibility-tracked impressions.

0.1.2-dev.2 #

  • DEV build of nestads_sdk_flutter_plugin. Not for production.
  • Android: com.nestads:nestads-sdk-android:2.13.1-SNAPSHOT from https://nexus.wisebirds.ai/repository/snapshots/.
  • iOS (SPM): nestads-sdk-ios-package at 2.13.0-dev from https://bitbucket.org/wisebirds/nestads-sdk-ios-package.
  • iOS (CocoaPods): the vendored Frameworks/NestAdsSDK.xcframework is the DEV 2.13.0 build (sync via tool/sync-dev-xcframework.sh 2.13.0-dev after each native SDK bump).
  • Banner: routes Dart NestAdsAdSize.fluid to native FLUID_CONTAIN (Android 2.13.1+) / NestAdsSizeType.fluidContain (iOS), giving aspect-correct fluid sizing at parent width.
  • Banner: ATT request and smart-quote normalization for JSON targeting fields.
  • Layout: top-level tools/ directory renamed to tool/ per pub layout convention.

0.1.2 #

  • DEV build of nestads_sdk_flutter_plugin. Not for production.
  • Android: com.nestads:nestads-sdk-android:2.13.0-SNAPSHOT from https://nexus.wisebirds.ai/repository/snapshots/.
  • iOS (SPM): nestads-sdk-ios-package at 2.13.0-dev from https://bitbucket.org/wisebirds/nestads-sdk-ios-package.
  • iOS (CocoaPods): the vendored Frameworks/NestAdsSDK.xcframework is the DEV 2.13.0 build (sync via tool/sync-dev-xcframework.sh 2.13.0-dev after each native SDK bump).

0.1.1 #

  • Bundle iOS NestAdsSDK.xcframework 2.11.0 (was stale in 0.1.0 — caused BackgroundBehavior/VideoPlayCondition unresolved errors on CocoaPods install).

0.1.0 — Initial release #

  • Banner ads (NestAdsBanner) with FIXED / FLUID / FILL sizing
  • Popup ads (NestAdsPopup) with show/dismiss controls
  • Splash ads (NestAdsSplash) — image + video (iOS v2.11.0+)
  • Wide splash ads (NestAdsWideSplash) — Android only, full-screen
  • Imperative controllers (NestAds<Format>Controller) with loadAd() + generic invoke()
  • Typed options classes (NestAds<Format>Options) for format-specific config
  • Bundled native SDKs: Android com.nestads:nestads-sdk-android:2.11.0, iOS SPM wisebirds/nestads-ios-sdk:2.11.0
0
likes
150
points
28
downloads

Documentation

API reference

Publisher

unverified uploader

Weekly Downloads

Official NestAds SDK for Flutter. Banner, popup, and splash ads with native Android and iOS integration.

Homepage
Repository
View/report issues

License

MIT (license)

Dependencies

crypto, encrypt, flutter, http, visibility_detector

More

Packages that depend on nestads_sdk_flutter_plugin

Packages that implement nestads_sdk_flutter_plugin