| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187 |
- import { DataEventId } from "../../../../../game/data/GameData";
- import { zgSingleton } from "../../zgSingleton";
- import ATSDKMgr from "./ATSDKMgr";
- /**
- * banner广告
- * @description
- * @author 冯聪
- */
- export default class ATBanner extends zgSingleton {
- /** */
- private ATBannerJS: any;
- /** 激励视频状态 */
- public bannerAdState: BannerAdState = 0;
- /** 是否加载完显示 */
- public ifLoadShow: boolean = false;
- /**是否观看完毕 */
- public ifWatchEnd: boolean = false;
- private singleClick = false;
- init() {
- this.ATBannerJS = cc["ATBannerJS"];
- this.ATBannerJS.proxy = this;
- this.ATBannerJS.init();
- if (this.bannerAdState == BannerAdState.Unload) {
- this.loadBanner();
- }
- }
- /** 广告位id */
- placementID() {
- if (cc.sys.os === cc.sys.OS_IOS) {
- return ATSDKMgr.topon_banner_placementId;
- } else if (cc.sys.os === cc.sys.OS_ANDROID) {
- return ATSDKMgr.topon_banner_placementId;
- }
- }
- //广告逻辑部分------------------------------------------------------------------------
- /**
- * 检测banner是否准备就绪
- * @returns
- */
- hasAdReady() {
- return this.ATBannerJS.hasAdReady();
- }
- /** 加载banner
- * @param ifLoadShow 是否显示 默认为false
- */
- loadBanner(ifLoadShow: boolean = false) {
- this.ifLoadShow = ifLoadShow;
- this.bannerAdState = BannerAdState.Loading;
- this.ATBannerJS.loadBanner();
- }
- /** 显示banner */
- showBanner() {
- if (this.bannerAdState == BannerAdState.Show) {
- }
- else {
- if (this.hasAdReady()) {
- this.bannerAdState = BannerAdState.Show;
- this.ATBannerJS.showBanner();
- }
- else {
- if (this.bannerAdState == BannerAdState.Loading) {
- this.ifLoadShow = true;
- }
- else {
- this.loadBanner(true);
- }
- }
- }
- }
- /** 销毁banner */
- destroyBanner() {
- this.bannerAdState = BannerAdState.Close;
- this.ATBannerJS.destroyBanner()
- this.loadBanner();
- }
- //广告回调部分------------------------------------------------------------------------
- /**
- * banner加载成功
- * @param {*} placementId 广告位id
- * @returns
- */
- onBannerAdLoaded(placementId) {
- this.bannerAdState = BannerAdState.LoadSuccess;
- }
- /**
- * banner加载失败
- * @param {*} placementId 广告位id
- * @param {*} errorInfo 错误信息
- * @returns
- */
- onBannerAdLoadFail(placementId, errorInfo) {
- this.bannerAdState = BannerAdState.LoadFail;
- // ATJSSDK.printLog("AnyThinkBannerDemo::onBannerAdLoadFail(" + placementId + ", " + errorInfo + ")");
- gData.adData.updateADLog(14, placementId);
- }
- /**
- * banner展示成功
- * @param {*} placementId 广告位id
- * @param {*} callbackInfo 回调信息
- * @returns
- */
- onBannerAdShow(placementId, callbackInfo) {
- this.bannerAdState = BannerAdState.Show;
- // ATJSSDK.printLog("AnyThinkBannerDemo::onBannerAdShow(" + placementId + ", " + callbackInfo + ")");
- let data = JSON.parse(callbackInfo);
- gData.adData.updateADLog(7, placementId, data);
- this.singleClick = true;
- }
- /**
- * banner被点击
- * @param {*} placementId 广告位id
- * @param {*} callbackInfo 回调信息
- * @returns
- */
- onBannerAdClick(placementId, callbackInfo) {
- // ATJSSDK.printLog("AnyThinkBannerDemo::onBannerAdClick(" + placementId + ", " + callbackInfo + ")");
- let data = JSON.parse(callbackInfo)
- gData.adData.updateADLog(55, placementId, data);
- mk.data.sendDataEvent(DataEventId.ad_click, 'banner点击');
- if (this.singleClick) {
- this.singleClick = false;
- gData.adData.updateADLog(75, placementId, data);
- }
- }
- /** banner自动刷新成功 */
- onBannerAdAutoRefresh(placementId, callbackInfo) {
- // ATJSSDK.printLog("AnyThinkBannerDemo::onBannerAdAutoRefresh(" + placementId + ", " + callbackInfo + ")");
- }
- /**
- * banner自动刷新失败
- * @param {*} placementId 广告位id
- * @param {*} errorInfo 错误信息
- * @returns
- */
- onBannerAdAutoRefreshFail(placementId, errorInfo) {
- // ATJSSDK.printLog("AnyThinkBannerDemo::onBannerAdAutoRefreshFail(" + placementId + ", " + errorInfo + ")");
- }
- /**
- * banner关闭按钮被点击
- * @param {*} placementId 广告位id
- * @param {*} callbackInfo 错误信息
- * @returns
- */
- onBannerAdCloseButtonTapped(placementId, callbackInfo) {
- // ATJSSDK.printLog("AnyThinkBannerDemo::onBannerAdCloseButtonTapped(" + placementId + ", " + callbackInfo + ")");
- }
- }
- /** banner广告加载状态 */
- export enum BannerAdState {
- /** 未加载 */
- Unload = 0,
- /** 加载中 */
- Loading = 1,
- /** 加载成功 */
- LoadSuccess = 2,
- /** 加载失败 */
- LoadFail = 3,
- /** 显示状态 */
- Show = 4,
- /** 关闭状态 */
- Close = 5
- }
|