我智商爆棚
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

82 lines
2.7 KiB

/*
* @Descripttion:
* @version: 1.0.0
* @Author: YeeChan
* @Date: 2020-07-23 16:59:58
*/
import RYSDK from "./RYSDK";
import { TimerUtils } from "../Mgr/TimerUtils";
export enum RYSTAT_Event {
RYSTAT_E_INIT_custom = "init",
RYSTAT_E_LOGIN_custom = "login",
RYSTAT_E_ENTRY_SOURCE_custom = "entrysource",
RYSTAT_E_CLICK_AD_custom = "clickad",
RYSTAT_E_CLICK_ALLOW_custom = "clickad",
}
export default class RYSTAT {
public static readonly domain_custom
public SendEvent_custom(event: string, data?: object | string, s?: Function, f?: Function) {
if (null != RYSDK.Instance_custom.rysdk_custom && null != RYSDK.Instance_custom.rysdk_custom.ry_SendEvent) {
RYSDK.Instance_custom.rysdk_custom.ry_SendEvent(event, data, null, s, f);
}
}
protected reportInitFail_custom() {
if (null != RYSDK.Instance_custom.rysdk_custom && null != RYSDK.Instance_custom.rysdk_custom.ry_ReportFail) {
RYSDK.Instance_custom.rysdk_custom.ry_ReportFail();
}
}
public reportInit_custom() {
let tryCounter = 0;
let s = () => { console.log("init 上报成功!!"); }
let f = () => {
console.log("init 上报失败!!");
if (tryCounter >= 10) {
console.log("init 上报重试次数超过 10次,放弃上报");
this.reportInitFail_custom();
}
else {
++tryCounter;
TimerUtils.once_custom(() => {
this.SendEvent_custom(RYSTAT_Event.RYSTAT_E_INIT_custom, null, s, f);
console.log("init 第 " + tryCounter + " 次重新上报");
}, 5)
// Laya.timer.once(5000, this, () => {
// this.SendEvent(RYSTAT_Event.RYSTAT_E_INIT,null,s,f);
// console.log("init 第 " + tryCounter +" 次重新上报");
// })
}
}
this.SendEvent_custom(RYSTAT_Event.RYSTAT_E_INIT_custom, null, s, f);
}
public reportLogin_custom() {
this.SendEvent_custom(RYSTAT_Event.RYSTAT_E_LOGIN_custom);
}
public reportEntrySource_custom() {
this.SendEvent_custom(RYSTAT_Event.RYSTAT_E_ENTRY_SOURCE_custom);
}
public reportClickAd_custom(adv_id: string) {
this.SendEvent_custom(RYSTAT_Event.RYSTAT_E_CLICK_AD_custom,
{
adv_id: adv_id,
timelog: Date.now(),
type: 0
});
}
public reportClickAdAllow_custom(adv_id: string) {
this.SendEvent_custom(RYSTAT_Event.RYSTAT_E_CLICK_ALLOW_custom,
{
adv_id: adv_id,
timelog: Date.now(),
type: 1
});
}
}