ATBannerJS.js 4.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148
  1. require("./AnyThinkAds/ATBannerJSSDK");
  2. require("./AnyThinkAds/ATJSSDK");
  3. var ATBannerJS = cc.Class({
  4. name: "ATBannerJS",
  5. /** 代理脚本(TS) */
  6. proxy: null,
  7. ctor: function () {
  8. // console.log("ATNativeJS created! ");
  9. },
  10. init: function () {
  11. ATBannerJSSDK.setAdListener(this);
  12. },
  13. /** 广告位id */
  14. placementID: function () {
  15. return this.proxy.placementID();
  16. },
  17. /**
  18. * 加载banner广告
  19. * @returns
  20. */
  21. loadBanner: function () {
  22. let winHeight = cc.view.getFrameSize().height
  23. if (winHeight < 1400) {
  24. return
  25. }
  26. var setting = {}
  27. var bannerH = winHeight / 1334 * 115
  28. setting[ATBannerJSSDK.kATBannerAdLoadingExtraBannerAdSizeStruct] = ATBannerJSSDK.createLoadAdSize(cc.view.getFrameSize().width, bannerH);
  29. //只针对Admob的自适应banner
  30. setting[ATBannerJSSDK.kATBannerAdInlineAdaptiveWidth] = cc.view.getFrameSize().width;
  31. setting[ATBannerJSSDK.kATBannerAdInlineAdaptiveOrientation] = ATBannerJSSDK.kATBannerAdInlineAdaptiveOrientationCurrent;
  32. // setting[ATBannerJSSDK.kATBannerAdInlineAdaptiveOrientation] = ATBannerJSSDK.kATBannerAdInlineAdaptiveOrientationPortrait;
  33. // setting[ATBannerJSSDK.kATBannerAdInlineAdaptiveOrientation] = ATBannerJSSDK.kATBannerAdInlineAdaptiveOrientationLandscape;
  34. ATBannerJSSDK.loadBanner(this.placementID(), setting);
  35. },
  36. /**
  37. * 检测banner是否准备就绪
  38. * @returns
  39. */
  40. hasAdReady: function () {
  41. return ATBannerJSSDK.hasAdReady(this.placementID()) ? true : false
  42. },
  43. /**
  44. * 显示banner
  45. * @returns
  46. */
  47. showBanner: function () {
  48. ATBannerJSSDK.showAdInPosition(this.placementID(), ATBannerJSSDK.kATBannerAdShowingPositionBottom);
  49. },
  50. /**
  51. * 销毁banner
  52. */
  53. destroyBanner: function () {
  54. ATBannerJSSDK.removeAd(this.placementID());
  55. },
  56. /**
  57. * banner加载成功
  58. * @param {*} placementId 广告位id
  59. * @returns
  60. */
  61. onBannerAdLoaded: function (placementId) {
  62. // ATJSSDK.printLog("AnyThinkBannerDemo::onBannerAdLoaded(" + placementId + ")");
  63. if (this.proxy == null) return;
  64. this.proxy.onBannerAdLoaded(placementId);
  65. },
  66. /**
  67. * banner加载失败
  68. * @param {*} placementId 广告位id
  69. * @param {*} errorInfo 错误信息
  70. * @returns
  71. */
  72. onBannerAdLoadFail: function (placementId, errorInfo) {
  73. ATJSSDK.printLog("===[ AnyThinkBannerDemo::onBannerAdLoadFail(" + placementId + ", " + errorInfo + ")");
  74. if (this.proxy == null) return;
  75. this.proxy.onBannerAdLoadFail(placementId, errorInfo);
  76. },
  77. /**
  78. * banner展示成功
  79. * @param {*} placementId 广告位id
  80. * @param {*} callbackInfo 回调信息
  81. * @returns
  82. */
  83. onBannerAdShow: function (placementId, callbackInfo) {
  84. // ATJSSDK.printLog("AnyThinkBannerDemo::onBannerAdShow(" + placementId + ", " + callbackInfo + ")");
  85. if (this.proxy == null) return;
  86. this.proxy.onBannerAdShow(placementId, callbackInfo);
  87. },
  88. /**
  89. * banner被点击
  90. * @param {*} placementId 广告位id
  91. * @param {*} callbackInfo 回调信息
  92. * @returns
  93. */
  94. onBannerAdClick: function (placementId, callbackInfo) {
  95. // ATJSSDK.printLog("AnyThinkBannerDemo::onBannerAdClick(" + placementId + ", " + callbackInfo + ")");
  96. if (this.proxy == null) return;
  97. this.proxy.onBannerAdClick(placementId, callbackInfo);
  98. },
  99. /** banner自动刷新成功 */
  100. onBannerAdAutoRefresh: function (placementId, callbackInfo) {
  101. // ATJSSDK.printLog("AnyThinkBannerDemo::onBannerAdAutoRefresh(" + placementId + ", " + callbackInfo + ")");
  102. if (this.proxy == null) return;
  103. },
  104. /**
  105. * banner自动刷新失败
  106. * @param {*} placementId 广告位id
  107. * @param {*} errorInfo 回调信息
  108. * @returns
  109. */
  110. onBannerAdAutoRefreshFail: function (placementId, errorInfo) {
  111. // ATJSSDK.printLog("AnyThinkBannerDemo::onBannerAdAutoRefreshFail(" + placementId + ", " + errorInfo + ")");
  112. if (this.proxy == null) return;
  113. },
  114. /**
  115. * banner关闭按钮被点击
  116. * @param {*} placementId 广告位id
  117. * @param {*} callbackInfo 回调信息
  118. * @returns
  119. */
  120. onBannerAdCloseButtonTapped: function (placementId, callbackInfo) {
  121. // ATJSSDK.printLog("AnyThinkBannerDemo::onBannerAdCloseButtonTapped(" + placementId + ", " + callbackInfo + ")");
  122. if (this.proxy == null) return;
  123. }
  124. });
  125. module.exports = ATBannerJS;
  126. if (!cc["ATBannerJS"]) {
  127. cc["ATBannerJS"] = new ATBannerJS();
  128. }