clever_ads_solutions 0.2.0 copy "clever_ads_solutions: ^0.2.0" to clipboard
clever_ads_solutions: ^0.2.0 copied to clipboard

Clever Ads Solutions Flutter plugin

example/lib/main.dart

import 'package:clever_ads_solutions/public/AdCallback.dart';
import 'package:clever_ads_solutions/public/AdImpression.dart';
import 'package:clever_ads_solutions/public/AdLoadCallback.dart';
import 'package:clever_ads_solutions/public/AdPosition.dart';
import 'package:clever_ads_solutions/public/AdSize.dart';
import 'package:clever_ads_solutions/public/AdType.dart';
import 'package:clever_ads_solutions/public/AdViewListener.dart';
import 'package:clever_ads_solutions/public/CASBannerView.dart';
import 'package:clever_ads_solutions/public/ConsentFlow.dart';
import 'package:clever_ads_solutions/public/InitConfig.dart';
import 'package:clever_ads_solutions/public/InitializationListener.dart';
import 'package:clever_ads_solutions/public/ManagerBuilder.dart';
import 'package:clever_ads_solutions/public/MediationManager.dart';
import 'package:flutter/material.dart';
import 'package:clever_ads_solutions/CAS.dart';
import 'package:clever_ads_solutions/public/AdTypes.dart';

void main() {
  runApp(MyApp());
}

class MyApp extends StatefulWidget {
  @override
  _MyAppState createState() => _MyAppState();
}

class _MyAppState extends State<MyApp> {
  @override
  void initState() {
    super.initState();
  }

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Scaffold(
        appBar: AppBar(
          title: const Text('Clever Ads Solutions Example App'),
        ),
        body: Center(
          child: Column(
            mainAxisSize: MainAxisSize.min,
            children: [
              ElevatedButton(
                child: Text('Inititalize'),
                onPressed: () => inititalize(),
              ),
              ElevatedButton(
                child: Text('Show interstitial'),
                onPressed: () => showInterstitial(),
              ),
              ElevatedButton(
                child: Text('Show rewarded'),
                onPressed: () => showRewarded(),
              ),
              ElevatedButton(
                child: Text('Create standart banner'),
                onPressed: () => createStandartBanner(),
              ),
              ElevatedButton(
                child: Text('Create adaptive banner'),
                onPressed: () => createAdaptiveBanner(),
              ),
              ElevatedButton(
                child: Text('Change banner position to top'),
                onPressed: () => changeBannerTop(),
              ),
              ElevatedButton(
                child: Text('Change banner to bottom'),
                onPressed: () => changeBannerBottom(),
              ),
            ],
          ),
        ),
      ),
    );
  }

  MediationManager? manager;

  Future<void> inititalize() async {
    CAS.setDebugMode(true);

    CAS.setFlutterVersion("1.20.0");

    CAS.setAnalyticsCollectionEnabled(true);
    //CAS.validateIntegration();

    ManagerBuilder builder = CAS
        .buildManager()
        .withTestMode(true)
        .withCasId("demo")
        .withAdTypes(AdTypeFlags.Banner |
            AdTypeFlags.Rewarded |
            AdTypeFlags.Interstitial)
        .withInitializationListener(InitializationListenerWrapper());

    manager = builder.initialize();
  }

  Future<void> showInterstitial() async {
    manager?.showInterstitial(InterstitialListenerWrapper());
  }

  Future<void> showRewarded() async {
    manager?.showRewarded(InterstitialListenerWrapper());
  }

  CASBannerView? view;
  Future<void> createAdaptiveBanner() async {
    view = manager?.getAdView(AdSize.Adaptive);
    view?.setAdListener(BannerListener());
    view?.setBannerPosition(AdPosition.TopCenter);
    view?.showBanner();
  }

  Future<void> createStandartBanner() async {
    view = manager?.getAdView(AdSize.Banner);
    view?.setAdListener(BannerListener());
    view?.showBanner();
    view?.setBannerPositionWithOffset(25, 100);
  }

  void changeBannerTop() {
    view?.setBannerPosition(AdPosition.TopCenter);
  }

  void changeBannerBottom() {
    view?.setBannerPosition(AdPosition.BottomCenter);
  }
}

class InitializationListenerWrapper extends InitializationListener {
  @override
  void onCASInitialized(InitConfig initConfig) {}
}

class InterstitialListenerWrapper extends AdCallback {
  @override
  void onClicked() {}

  @override
  void onClosed() {}

  @override
  void onComplete() {}

  @override
  void onImpression(AdImpression? adImpression) {}

  @override
  void onShowFailed(String? message) {}

  @override
  void onShown() {}
}

class BannerListener extends AdViewListener {
  @override
  void onAdViewPresented() {}

  @override
  void onClicked() {}

  @override
  void onFailed(String? message) {}

  @override
  void onImpression(AdImpression? adImpression) {}

  @override
  void onLoaded() {}
}

class LoadCallback extends AdLoadCallback {
  @override
  void onAdFailedToLoad(AdType adType, String? error) {}

  @override
  void onAdLoaded(AdType adType) {}
}
12
likes
0
points
862
downloads

Publisher

unverified uploader

Weekly Downloads

Clever Ads Solutions Flutter plugin

Homepage

License

unknown (license)

Dependencies

dartz, flutter, package_info_plus

More

Packages that depend on clever_ads_solutions