clever_ads_solutions 0.0.2
clever_ads_solutions: ^0.0.2 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/AdPosition.dart';
import 'package:clever_ads_solutions/public/AdSize.dart';
import 'package:clever_ads_solutions/public/AdStatusHandler.dart';
import 'package:clever_ads_solutions/public/AdViewListener.dart';
import 'package:clever_ads_solutions/public/CASBannerView.dart';
import 'package:clever_ads_solutions/public/InitializationListener.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/ManagerBuilder.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('Initialize'),
onPressed: () => Inititalize(),
),
ElevatedButton(
child: Text('Show interstitial'),
onPressed: () => ShowInterstitial(),
),
ElevatedButton(
child: Text('Show rewarded'),
onPressed: () => ShowRewarded(),
),
ElevatedButton(
child: Text('Create banner'),
onPressed: () => CreateBanner(),
),
ElevatedButton(
child: Text('Create'),
onPressed: () => CreateMrec(),
),
ElevatedButton(
child: Text('Change banner to left'),
onPressed: () => ChangeBottomLeft(),
),
ElevatedButton(
child: Text('Change banner to top'),
onPressed: () => ChangeBannerTop(),
),
],
),
),
),
);
}
MediationManager manager;
Future<void> Inititalize() async {
CAS.setDebugMode(true);
CAS.setFlutterVersion("1.0.0");
ManagerBuilder builder = CAS.buildManager();
builder.withTestMode(true);
builder.withCasId("demo");
builder.withAdTypes(
AdTypeFlags.Banner | AdTypeFlags.Rewarded | AdTypeFlags.Interstitial);
builder.withInitializationListener(new InitializationListenerWrapper());
manager = builder.initialize();
CAS.validateIntegration();
}
Future<void> ShowInterstitial() async {
manager.showInterstitial(new InterstitialListenerWrapper());
}
Future<void> ShowRewarded() async {
manager.showRewarded(new InterstitialListenerWrapper());
}
CASBannerView view;
Future<void> CreateBanner() async {
view = manager.getAdView(AdSize.Adaptive);
view.setAdListener(new AdaptiveBannerListener());
view.setBannerPosition(AdPosition.TopCenter);
view.showBanner();
}
Future<void> CreateMrec() async {
view = manager.getAdView(AdSize.Banner);
view.setAdListener(new StandartBannerListener());
view.showBanner();
}
void ChangeBannerTop() {
view?.setBannerPosition(AdPosition.TopCenter);
}
void ChangeBottomLeft() {
view?.setBannerPosition(AdPosition.BottomRight);
}
}
class InitializationListenerWrapper extends InitializationListener {
@override
void onCASInitialized(bool success, String error) {
bool succ = success;
String err = error;
print(succ);
}
}
class InterstitialListenerWrapper extends AdCallback {
@override
void onClicked() {
print("click");
}
@override
void onClosed() {
print("closed");
}
@override
void onComplete() {
print("complete");
}
@override
void onImpression(AdStatusHandler adStatusHandler) {
print(adStatusHandler.cpm);
}
@override
void onShowFailed(String message) {}
@override
void onShown() {
print("shown");
}
}
class AdaptiveBannerListener extends AdViewListener {
@override
void onAdViewPresented() {
print("pr");
}
@override
void onClicked() {
print("click");
}
@override
void onFailed(String message) {
// TODO: implement onFailed
}
@override
void onImpression(AdStatusHandler adStatusHandler) {
print(adStatusHandler?.cpm);
}
@override
void onLoaded() {
// TODO: implement onLoaded
}
}
class StandartBannerListener extends AdViewListener {
@override
void onAdViewPresented() {
print("pr");
}
@override
void onClicked() {
print("click");
}
@override
void onFailed(String message) {
// TODO: implement onFailed
}
@override
void onImpression(AdStatusHandler adStatusHandler) {
print(adStatusHandler?.cpm);
}
@override
void onLoaded() {
// TODO: implement onLoaded
}
}