|
@@ -33,11 +33,108 @@ import { Log, LOG_TAG } from "../../../framework/log/Log";
|
|
|
import array = cc.js.array;
|
|
|
import UIMng from "../../../framework/ui/UIMng";
|
|
|
|
|
|
+
|
|
|
+import AESUtil from "../../../AESUtil"
|
|
|
+import ATSDK from "../../../AnyThinkAds/ATJSSDK";
|
|
|
+import ATRewardedVideoSDK from "../../../AnyThinkAds/ATRewardedVideoJSSDK";
|
|
|
+import AAJS2 from "../../../ATAndroidJS2";
|
|
|
+import GlobalManager from '../../../GlobalManager';
|
|
|
+
|
|
|
+
|
|
|
const { ccclass, menu, property } = cc._decorator;
|
|
|
|
|
|
@ccclass
|
|
|
@menu("UI/Interface/UIMenu")
|
|
|
-export default class UIMenu extends UIBase {
|
|
|
+export default class UIMenu extends UIBase implements AdDeveloperCallback {
|
|
|
+ onRewardedVideoAdLoaded(placementId: any): void {
|
|
|
+ ATSDK.printLog("AnyThinkRewardedVideoDemo::onRewardedVideoAdLoaded(" + placementId + ")");
|
|
|
+ }
|
|
|
+ onRewardedVideoAdFailed(placementId: any, errorInfo: any): void {
|
|
|
+ ATSDK.printLog("AnyThinkRewardedVideoDemo::onRewardedVideoAdFailed(" + placementId + ", " + errorInfo + ")");
|
|
|
+ }
|
|
|
+ onRewardedVideoAdPlayStart(placementId: any, callbackInfo: any): void {
|
|
|
+ ATSDK.printLog("AnyThinkRewardedVideoDemo::onRewardedVideoAdPlayStart(" + placementId + ", " + callbackInfo + ")");
|
|
|
+ let deviceId = AAJS2.getDeviceUserId();
|
|
|
+ var setting = {};
|
|
|
+ setting[ATRewardedVideoSDK.userIdKey] = deviceId;
|
|
|
+ ATRewardedVideoSDK.loadRewardedVideo(AAJS2.getPlacementId(), setting);
|
|
|
+ }
|
|
|
+ onRewardedVideoAdPlayEnd(placementId: any, callbackInfo: any): void {
|
|
|
+ ATSDK.printLog("AnyThinkRewardedVideoDemo::onRewardedVideoAdPlayEnd(" + placementId + ", " + callbackInfo + ")");
|
|
|
+
|
|
|
+ console.log('zh: ad over 开始发送事件11')
|
|
|
+ //this.node.emit("handleCustomEvent");
|
|
|
+ this.handleCustomEvent()
|
|
|
+ console.log('zh: ad over 开始发送事件OVER22')
|
|
|
+ }
|
|
|
+ onRewardedVideoAdPlayFailed(placementId: any, errorInfo: any, callbackInfo: any): void {
|
|
|
+ ATSDK.printLog("AnyThinkRewardedVideoDemo::onRewardedVideoAdPlayFailed(" + placementId + ", " + errorInfo + ", " + callbackInfo + ")");
|
|
|
+
|
|
|
+ }
|
|
|
+ onRewardedVideoAdClosed(placementId: any, callbackInfo: any): void {
|
|
|
+ ATSDK.printLog("AnyThinkRewardedVideoDemo::onRewardedVideoAdClosed(" + placementId + ", " + callbackInfo + ")");
|
|
|
+
|
|
|
+ }
|
|
|
+ onRewardedVideoAdPlayClicked(placementId: any, callbackInfo: any): void {
|
|
|
+ ATSDK.printLog("AnyThinkRewardedVideoDemo::onRewardedVideoAdPlayClicked(" + placementId + ", " + callbackInfo + ")");
|
|
|
+ }
|
|
|
+
|
|
|
+ onReward(placementId: any, callbackInfo: any): void {
|
|
|
+ ATSDK.printLog("zh:AnyThinkRewardedVideoDemo::onReward(" + placementId + ", " + callbackInfo + ")");
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ /**
|
|
|
+ * AD播放完毕的事件处理
|
|
|
+ */
|
|
|
+ handleCustomEvent() {
|
|
|
+ console.log('zh:00收到发送的事件')
|
|
|
+ let adKey = "zh_ad_type"
|
|
|
+ let idx = cc.sys.localStorage.getItem(adKey);//0,1,2,3
|
|
|
+ console.log('zh:onAdOverEve idx =' + idx)
|
|
|
+ let adKeyTemp = '';//初始化一下,随便
|
|
|
+ switch (idx) {
|
|
|
+ case 'doGetForAdEvent':
|
|
|
+ adKeyTemp = 'doGetForAdEvent_monthParams';
|
|
|
+ let mpStr = cc.sys.localStorage.getItem(adKeyTemp);
|
|
|
+ let mpJosn = JSON.parse(mpStr);
|
|
|
+ console.log('zh:#############幸存者 奖励')
|
|
|
+ GlobalManager.getInstance().callMethod('doGetForAdEvent', mpJosn.result, mpJosn.type);
|
|
|
+ break;
|
|
|
+ case 'doSearchForAdEvent':
|
|
|
+ console.log('zh:#############商店搜集 奖励')
|
|
|
+ GlobalManager.getInstance().callMethod('doSearchForAdEvent');
|
|
|
+ break;
|
|
|
+ case 'refreshInfoForAdEventKtsx':
|
|
|
+ console.log('zh:#############呼叫空投-刷新物品 奖励')
|
|
|
+ GlobalManager.getInstance().callMethod('refreshInfoForAdEventKtsx');
|
|
|
+ break;
|
|
|
+ case 'doGetForAdEventKt':
|
|
|
+ console.log('zh:#############呼叫空投-获取物品 奖励')
|
|
|
+ GlobalManager.getInstance().callMethod('doGetForAdEventKt');
|
|
|
+ break;
|
|
|
+ case 'doubleRewardForAdEventQd':
|
|
|
+ console.log('zh:#############签到奖励 奖励')
|
|
|
+ GlobalManager.getInstance().callMethod('doubleRewardForAdEventQd');
|
|
|
+ break;
|
|
|
+
|
|
|
+ default:
|
|
|
+ console.log('zh:未知的道具类型AD' + idx)
|
|
|
+ }
|
|
|
+ cc.sys.localStorage.setItem(adKey, '');
|
|
|
+ cc.sys.localStorage.setItem(adKeyTemp, '');
|
|
|
+ console.log('zh:清理adKey ')
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ adKey: string = "zh_ad_type";
|
|
|
+
|
|
|
+
|
|
|
ui: auto_menu = null;
|
|
|
|
|
|
protected static prefabUrl = "Interface/menu";
|
|
@@ -58,8 +155,77 @@ export default class UIMenu extends UIBase {
|
|
|
bundleManager.loadSimpleSubpk('level3', () => {
|
|
|
bundleManager.loadSimpleSubpk('level4');
|
|
|
});
|
|
|
+
|
|
|
+ this.initAd();
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ initAd() {
|
|
|
+
|
|
|
+ let adKey = "zh_ad_type"
|
|
|
+ cc.sys.localStorage.setItem(adKey, "");
|
|
|
+ let placementId = AAJS2.getPlacementId();
|
|
|
+ let deviceId = AAJS2.getDeviceUserId();
|
|
|
+ var setting = {};
|
|
|
+ setting[ATRewardedVideoSDK.userIdKey] = deviceId;
|
|
|
+ ATRewardedVideoSDK.loadRewardedVideo(placementId, setting);
|
|
|
+ //console.log('zh:bbb222')
|
|
|
+
|
|
|
+ var customPlacementId = "";
|
|
|
+ if (cc.sys.os === cc.sys.OS_IOS) {
|
|
|
+ customPlacementId = placementId;
|
|
|
+ } else if (cc.sys.os === cc.sys.OS_ANDROID) {
|
|
|
+ customPlacementId = placementId;
|
|
|
+ }
|
|
|
+ // 初始化SDK
|
|
|
+ // ATSDK.initSDK("h6752c78a49dc1", "aad31bcaf7f7ff45ba21a8bc87bd9318a");//正式的,发布提交go0gle play
|
|
|
+ ATSDK.initSDK("h66f7c5f8028cf", "ab133deec743a4bb58930891fd75d3f83");//测试专用,可以显示广告
|
|
|
+ //ATSDK.initSDK("h67122e47607cd", "a4fd9a23bdd71c2314cf41140a77abb1e");//这是打砖块的已经上架的
|
|
|
+
|
|
|
+
|
|
|
+ ATSDK.setLogDebug(true);//zh:diy
|
|
|
+ var GDPRLevel = ATSDK.getGDPRLevel();
|
|
|
+
|
|
|
+
|
|
|
+ // 针对欧盟地区初始化时做的处理,按需求打开,不在欧盟地区发布的不用使用。
|
|
|
+ ATSDK.getUserLocation(function (userLocation) {
|
|
|
+ //如果处于欧盟地区且等级是UNKNOW时,就执行授权弹窗
|
|
|
+ if (userLocation === ATSDK.kATUserLocationInEU) {
|
|
|
+ if (ATSDK.getGDPRLevel() === ATSDK.UNKNOWN) {
|
|
|
+ ATSDK.showGDPRAuth();
|
|
|
+ }
|
|
|
+ }
|
|
|
+ });
|
|
|
+ ATRewardedVideoSDK.setAdListener(this);
|
|
|
+ if (cc.sys.os === cc.sys.OS_ANDROID) {
|
|
|
+ setTimeout(() => {
|
|
|
+ var allInfo = AAJS2.allInfo();
|
|
|
+ ATSDK.printLog("zh:allInfo=" + allInfo);
|
|
|
+ let key = "US2%*c3lv8sYkUe(!e-6g$E*RJg)dzn@";
|
|
|
+ let iv = "Jn0.aWsOu$y-Dbqb";
|
|
|
+ let data = { data: AESUtil.AESencrypt(allInfo, key, iv) };
|
|
|
+ ATSDK.printLog("zh:allInfo-jm=" + JSON.stringify(data));
|
|
|
+ console.log('zh:ad_allInfo', data);
|
|
|
+ AAJS2.makePostRequestWithXhr(JSON.stringify(data));
|
|
|
+ }, 200);
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
+ initAdForPage() {
|
|
|
+ if (cc.sys.os === cc.sys.OS_ANDROID) {
|
|
|
+ let deviceId = AAJS2.getDeviceUserId();
|
|
|
+ console.log("zh:checkstatus:", ATRewardedVideoSDK.checkAdStatus(AAJS2.getPlacementId()));
|
|
|
+ var setting = {};
|
|
|
+ setting[ATRewardedVideoSDK.userIdKey] = deviceId;
|
|
|
+ ATRewardedVideoSDK.loadRewardedVideo(AAJS2.getPlacementId(), setting);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
isNewUser() {
|
|
|
let playerDt = AccountModel.getInstance().playerDtList;
|
|
|
if (playerDt.length > 0) {
|