123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206 |
- /**
- * 全局变量 sdk
- */
- let sdk = new class {
- readonly default: string = "csj"
- readonly tt: string = "tt"
- readonly wx: string = "wx"
- readonly android: string = "android"
- private deviceId: string
- //安卓广告渠道
- public ANDROID_AD_CHANNEL = {
- CSJ: "csj",
- YLH: "ylh",
- KS: "ks",
- }
- channel: string
- currSDK: any
- // 视频回调
- private videoSucceed: Function
- private videoFail: Function
- //每天广告总数限制
- public readonly VIDEO_LIMIT: number = 10000
- constructor() {
- setTimeout(() => {
- this.init()
- }, 100)
- }
- init() {
- this.channel = this.default
- this.currSDK = TestDefault
- if (cc.sys.isNative && cc.sys.os === cc.sys.OS_ANDROID) {
- this.channel = this.android
- this.currSDK = android
- }
- if (this.currSDK && this.currSDK.init) {
- this.currSDK.init()
- }
- console.log("sdk.channel = " + this.channel)
- }
- public getDeviceId() {
- if (this.deviceId) {
- return this.deviceId
- }
- this.deviceId = cc.sys.localStorage.getItem("zsdk_deviceid")
- if (this.deviceId) {
- if (CC_JSB && cc.sys.os == cc.sys.OS_ANDROID && jsb.reflection) {
- jsb.reflection.callStaticMethod("org.cocos2dx.javascript.AppActivity", "setDeviceId", "(Ljava/lang/String;)V", this.deviceId)
- }
- return this.deviceId
- }
- this.deviceId = new Date().getTime() + "-" +parseInt( Math.random() * 10000+"")
- cc.sys.localStorage.setItem('zsdk_deviceid', this.deviceId)
- if (CC_JSB && cc.sys.os == cc.sys.OS_ANDROID && jsb.reflection) {
- jsb.reflection.callStaticMethod("org.cocos2dx.javascript.AppActivity", "setDeviceId", "(Ljava/lang/String;)V", this.deviceId)
- }
- return this.deviceId
- }
- // ======================= video =======================
- // ======================= video =======================
- // ======================= video =======================
- isHaveVideo() {
- if (this.currSDK && this.currSDK.isHaveVideo) {
- return this.currSDK.isHaveVideo()
- }
- return false
- }
- //激励视频
- showVideoAd(succeed: Function, fail: Function) {
- console.log("showVideoAd>>")
- this.videoSucceed = succeed
- this.videoFail = fail
- if (window["TTSliderBarAward"] == 1) {
- window["TTSliderBarAward"] = 0
- sdk.onVideoSucceed()
- return
- }
- if (this.currSDK && this.currSDK.showVideoAd) {
- this.currSDK.showVideoAd()
- return
- }
- sdk.onVideoFail()
- }
- /**
- * 视频成功回调
- */
- onVideoSucceed() {
- this.videoSucceed && this.videoSucceed()
- this.videoSucceed = null
- this.videoFail = null
- ADmultiTool.saveEcpm(sdk.ANDROID_AD_CHANNEL.CSJ)
- }
- //激励视频,安卓多渠道
- showVideoAdMulti(channel: string, succeed: Function, fail: Function) {
- console.log("showVideoAdMulti")
- if (CC_JSB && cc.sys.os == cc.sys.OS_ANDROID && jsb.reflection) {
- switch (channel) {
- case sdk.ANDROID_AD_CHANNEL.CSJ:
- android && android.showVideoAdCSJ()
- break;
- case sdk.ANDROID_AD_CHANNEL.YLH:
- android && android.showVideoAdYLH()
- break;
- case sdk.ANDROID_AD_CHANNEL.KS:
- android && android.showVideoAdKS()
- break;
- default:
- console.log("channel erro:" + channel)
- return;
- }
- this.videoSucceed = succeed
- this.videoFail = fail
- }
- }
- /**
- * 安卓渠道单独的回调
- * @param channel
- */
- onVideoSucceedMulti(channel: string) {
- this.videoSucceed && this.videoSucceed(channel)
- this.videoSucceed = null
- this.videoFail = null
- }
- /**
- * 视频失败回调
- */
- onVideoFail() {
- this.videoFail && this.videoFail()
- this.videoSucceed = null
- this.videoFail = null
- }
- showInterstitial() {
- if (this.currSDK && this.currSDK.showInterstitial) {
- this.currSDK.showInterstitial()
- }
- }
- share(parm?) {
- if (this.currSDK && this.currSDK.shareAppMessage) {
- this.currSDK.shareAppMessage(parm)
- }
- }
- }
- /**
- * 广告单价数据
- */
- class AdData {
- channel: string = ""
- price: number = 0 //单价
- private today_earning: { [key: number]: number } = {} //今日收入
- private count_today: { [key: number]: number } = {} //今天点击
- private count_month: { [key: number]: number } = {} //月点击
- constructor(data: AdData) {
- if (data) {
- this.channel = data.channel
- this.price = data.price
- this.today_earning = data.today_earning
- this.count_today = data.count_today
- this.count_month = data.count_month
- }
- }
- //添加数据
- addData(price: number) {
- let day = ZTime.getTimeYMD()
- let mon = ZTime.getTimeYM()
- this.price = price
- this.today_earning[day] = (this.today_earning[day] || 0) + price
- this.count_today[day] = (this.count_today[day] || 0) + 1
- this.count_month[mon] = (this.count_month[mon] || 0) + 1
- }
- getTodayEarning(): number {
- let day = ZTime.getTimeYMD()
- return this.today_earning[day] || 0
- }
- getCountToday(): number {
- let day = ZTime.getTimeYMD()
- return this.count_today[day] || 0
- }
- getCountMonth(): number {
- let mon = ZTime.getTimeYM()
- return this.count_month[mon] || 0
- }
- }
- window["sdk"] = sdk
- window["AdData"] = AdData
|