yandexads-flutter

Форк
0
/
yandex.dart 
107 строк · 3.0 Кб
1
import 'package:flutter_yandex_ads/components/appopen.dart';
2
import 'package:flutter_yandex_ads/components/interstitial.dart';
3
import 'package:flutter_yandex_ads/components/rewarded.dart';
4
import 'package:flutter_yandex_ads/pigeons/appopen.dart';
5
import 'package:flutter_yandex_ads/pigeons/interstitial.dart';
6
import 'package:flutter_yandex_ads/pigeons/rewarded.dart';
7
import 'package:flutter_yandex_ads/pigeons/yandex.dart';
8

9
class FlutterYandexAds {
10
  static Map<String, YandexAdsAppOpenCallbacks> appopens = {};
11
  static Map<String, YandexAdsInterstitialCallbacks> interstitials = {};
12
  static Map<String, YandexAdsRewardedCallbacks> rewardeds = {};
13

14
  static void initialize() {
15
    YandexAdsApi().initialize();
16

17
    FlutterYandexAdsAppOpen.setup(FlutterYandexAdsAppOpenCallbacks());
18
    FlutterYandexAdsInterstitial.setup(FlutterYandexAdsInterstitialCallbacks());
19
    FlutterYandexAdsRewarded.setup(FlutterYandexAdsRewardedCallbacks());
20
  }
21

22
  static void addAppOpen(String id, YandexAdsAppOpenCallbacks callbacks) {
23
    appopens[id] = callbacks;
24
  }
25

26
  static YandexAdsAppOpenCallbacks? getAppOpen(String id) {
27
    return appopens[id];
28
  }
29

30
  static void addInterstitial(String id, YandexAdsInterstitialCallbacks callbacks) {
31
    interstitials[id] = callbacks;
32
  }
33

34
  static YandexAdsInterstitialCallbacks? getInterstitial(String id) {
35
    return interstitials[id];
36
  }
37

38
  static void addRewarded(String id, YandexAdsRewardedCallbacks callbacks) {
39
    rewardeds[id] = callbacks;
40
  }
41

42
  static YandexAdsRewardedCallbacks? getRewarded(String id) {
43
    return rewardeds[id];
44
  }
45
}
46

47
class YandexAdsAppOpenCallbacks {
48
  YandexAdsAppOpenCallbacks({
49
    required this.onAdLoaded,
50
    required this.onAdFailedToLoad,
51
    required this.onAdFailedToShow,
52
    required this.onImpression,
53
    required this.onAdClicked,
54
    required this.onAdShown,
55
    required this.onAdDismissed,
56
  });
57

58
  Function? onAdLoaded;
59
  Function? onAdFailedToLoad;
60
  Function? onAdFailedToShow;
61
  Function? onImpression;
62
  Function? onAdClicked;
63
  Function? onAdShown;
64
  Function? onAdDismissed;
65
}
66

67
class YandexAdsInterstitialCallbacks {
68
  YandexAdsInterstitialCallbacks({
69
    required this.onAdLoaded,
70
    required this.onAdFailedToLoad,
71
    required this.onAdFailedToShow,
72
    required this.onImpression,
73
    required this.onAdClicked,
74
    required this.onAdShown,
75
    required this.onAdDismissed,
76
  });
77

78
  Function? onAdLoaded;
79
  Function? onAdFailedToLoad;
80
  Function? onAdFailedToShow;
81
  Function? onImpression;
82
  Function? onAdClicked;
83
  Function? onAdShown;
84
  Function? onAdDismissed;
85
}
86

87
class YandexAdsRewardedCallbacks {
88
  YandexAdsRewardedCallbacks({
89
    required this.onAdLoaded,
90
    required this.onAdFailedToLoad,
91
    required this.onAdFailedToShow,
92
    required this.onImpression,
93
    required this.onAdClicked,
94
    required this.onAdShown,
95
    required this.onAdDismissed,
96
    required this.onReward,
97
  });
98

99
  Function? onAdLoaded;
100
  Function? onAdFailedToLoad;
101
  Function? onAdFailedToShow;
102
  Function? onImpression;
103
  Function? onAdClicked;
104
  Function? onAdShown;
105
  Function? onAdDismissed;
106
  Function? onReward;
107
}
108

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.