- Fixed a bug where
OnDismissListener
callback was not called.
- Wraps Android and iOS 3.9.8 SDK.
- The
BannerWidget
is invisible when no ad is loaded. - When the ad content is smaller than the requested
AdSize
of theBannerWidget
, the widget adjusts its size to match the received ad content.
- Fixed an issue with creating AppOpen ads via MediationManager.
- Fixed an issue where Banner events were received only by the last banner listener.
- Reworked AdSize so the BannerWidget constructor can accept the result of AdSize methods.
- Fixed crash when calling AdSize.getAdaptiveBanner(maxWidthDp).
- [iOS] Fixed crash when calling AdSize.getAdaptiveBannerInScreen().
- Fixed issues with AppOpen ads.
- Added support for AppOpen ads.
- [Android] Requires a minimum
minSdk
of 23.
- [Android] Fixed error:
PlatformException(Platform views cannot be displayed below API level 23)
. - Fixed error:
MissingPluginException(No implementation found for method dispose on channel 'banner')
.
- Fixed a crash on banner disposal.
- Update doc
- Fixed ad event handling on app return
- Fixed issues with AdSize method calls
- Fixed issues with consent flow handling
- Methods for configuring ads settings and targeting options in the
CAS
class deprecated. Use dedicated singletons of theAdsSettings
andTargetingOptions
classes in CAS:CAS.settings
;CAS.targetingOptions
.
- Floating banners deprecated; use banners in the widget tree.
CASBannerView
andBannerView
deprecated; useBannerWidget
instead.MediationManager.getAdView(AdSize)
deprecated. UseBannerWidget
instead.
- Most enum values renamed to follow Dart's naming convention, using camelCase.
UserConsent
deprecated; useConsentStatus
instead.
AdSize
reworked, added new methods:getSmartBanner()
replaces deprecatedAdSize.Smart
;getInlineBanner(int width, int maxHeight)
;getAdaptiveBanner(int maxWidthDp)
replaces deprecatedBannerView.maxWidthDpi
;getAdaptiveBannerInScreen()
replaces deprecatedAdSize.Adaptive
.
- Fixed error:
channel sent a message from native to Flutter on a non-platform thread
.
Below are important changes in the adapters that should be noted. Please refer to the native SDKs release notes for a complete overview of all adapter updates.
- [Android] Yandex Ads
⚠️ [SDK] The minimum AppMetrica version is now 7.2.0 (Flutter plugin 3.1.0). This is only important if your project already has the AppMetrica Flutter Plugin integrated. You can skip the integration if you are not using it.⚠️ [SDK] The minimum Android Gradle plugin version is now 7.0.
- [Android] No longer requires to add ads repositories to your project-level build.gradle.
- [Android] Requires a minimum
compileSdkVersion
of 34. - [iOS] Requires apps to build with Xcode 15.3 or above.
- The CASExchange adapter has been included to the Optimal Ads Solutions.
- Previously beta adapters are now available to all: CASExchange, HyprMX, and StartIO.
- All the package files have been renamed to comply with naming conventions for files.
Please useimport 'package:clever_ads_solutions/clever_ads_solutions.dart';
instead. - Removed the deprecated dependency
package_info_plus
.
- [iOS] Fixed rare fatal error:
No bridge module
.
- Wraps Android and iOS 3.8.1 SDK.
- Added
import 'package:clever_ads_solutions/clever_ads_solutions.dart';
which includes all package imports.
- CASExchange - is a cutting-edge exchange platform designed to extend our SDK, enabling integration with Demand Side Platforms (DSPs).
- Ogury
- LoopMe
- [Android] Fixed
IllegalArgumentException
from BannerView (#10)
- Added compatibility with CAS 3.7.0+ for iOS
- Fixed rarely issue
Unhandled Exception: PlatformException(CASFlutterBridgeError, failed to get manager, null, null)
- Added banner ads as widgets
- Fixed common issue
Unhandled Exception: PlatformException(CASFlutterBridgeError, failed to get manager, null, null)
with CAS 3.6.0 and later