Commit be22f0b1a233f2dd6ce94ad11b96f6e91e9bd8cb

Authored by 宋庆平
1 parent cd5f2a51

X

sdk/SDKTools.ts
@@ -358,11 +358,6 @@ export class SDKTools { @@ -358,11 +358,6 @@ export class SDKTools {
358 static behavior() { 358 static behavior() {
359 return WXSDK.game.behavior() 359 return WXSDK.game.behavior()
360 } 360 }
361 - //修改用户属性 ptm 是否累计玩游戏300秒,1是  
362 - static attributePtm() {  
363 - return WXSDK.stat.attributePtm()  
364 - }  
365 -  
366 361
367 } 362 }
368 363
sdk/shareTools.ts
@@ -93,5 +93,4 @@ export class ShareTools { @@ -93,5 +93,4 @@ export class ShareTools {
93 93
94 94
95 export enum ShareKey { 95 export enum ShareKey {
96 -  
97 } 96 }
wxsdk/WXSDK.ts
@@ -45,6 +45,7 @@ export default class WXSDK { @@ -45,6 +45,7 @@ export default class WXSDK {
45 ShareVideoService.I.preloadVideo(); 45 ShareVideoService.I.preloadVideo();
46 }, 2000); 46 }, 2000);
47 } 47 }
  48 + DataService.I.updateTodayOnlineTime();
48 await this.game.env(); 49 await this.game.env();
49 if (this.isWx) { 50 if (this.isWx) {
50 ShareVideoService.I.init(); 51 ShareVideoService.I.init();
wxsdk/base/SDKConst.ts
@@ -35,7 +35,7 @@ export const GAMEDATA = { @@ -35,7 +35,7 @@ export const GAMEDATA = {
35 35
36 36
37 // sdk版本 37 // sdk版本
38 -export const SDKVersion = 'v1.0.1'; 38 +export const SDKVersion = 'v1.0.2';
39 // 是否打印 39 // 是否打印
40 export const __LOG__ = false; 40 export const __LOG__ = false;
41 41
wxsdk/service/DataService.ts
@@ -518,6 +518,56 @@ export default class DataService { @@ -518,6 +518,56 @@ export default class DataService {
518 // return LocalService.I.getDayAllVideoNum(); 518 // return LocalService.I.getDayAllVideoNum();
519 // } 519 // }
520 520
  521 + private timeInterval
  522 + public updateTodayOnlineTime() {
  523 + let dot = StorageUtils.I.get("pcsdk_today_online_time_300") || 0;
  524 + if (dot === 1) {
  525 + this.setPtm(1)
  526 + // 定时重启
  527 + let expiration = +((this.nextDay() - Date.now()) / 1000).toFixed(0);
  528 + setTimeout(() => {
  529 + this.updateTodayOnlineTime();
  530 + }, expiration * 1000);
  531 + return;
  532 + } else {
  533 + this.setPtm(0)
  534 + this.timeInterval = setInterval(this.stayFun.bind(this), 5000);
  535 + }
  536 + }
  537 + private stayFun() {
  538 + let expiration = +((this.nextDay() - Date.now()) / 1000).toFixed(0);
  539 + let time = StorageUtils.I.get("pcsdk_today_online_time") || 0;
  540 + time += 5;
  541 + StorageUtils.I.set("pcsdk_today_online_time", time, expiration)
  542 + let dot = StorageUtils.I.get("pcsdk_today_online_time_300") || 0;
  543 + if (dot === 1) {
  544 + this.setPtm(1)
  545 + clearInterval(this.timeInterval);
  546 + // 定时重启
  547 + setTimeout(() => {
  548 + this.updateTodayOnlineTime();
  549 + }, expiration * 1000);
  550 + return;
  551 + }
  552 + // console.log("newUserTime", newUserTime, newUserDot)
  553 + if (time >= 300 && dot == 0) {
  554 + StorageUtils.I.set("pcsdk_today_online_time_300", 1, expiration);
  555 + this.setPtm(1)
  556 + clearInterval(this.timeInterval);
  557 + // 定时重启
  558 + setTimeout(() => {
  559 + this.updateTodayOnlineTime();
  560 + }, expiration * 1000);
  561 + }
  562 + }
  563 +
  564 + public nextDay() {
  565 + var str = new Date();
  566 + var str2 = str.getFullYear() + "/"
  567 + + (str.getMonth() + 1) + "/" + str.getDate();
  568 + return new Date(str2).getTime() + 24 * 60 * 60 * 1000
  569 + }
  570 +
521 private static instance: DataService; 571 private static instance: DataService;
522 static get I(): DataService { 572 static get I(): DataService {
523 return this.instance || (this.instance = new DataService()); 573 return this.instance || (this.instance = new DataService());
wxsdk/service/LogService.ts
@@ -221,7 +221,7 @@ export default class LogService { @@ -221,7 +221,7 @@ export default class LogService {
221 ...this.buildParams() 221 ...this.buildParams()
222 }) 222 })
223 this.checkLogin(fun); 223 this.checkLogin(fun);
224 - // 30秒 计时 和 300秒计时 打点 224 + // 30秒 计时
225 this.startStay() 225 this.startStay()
226 } 226 }
227 227
@@ -299,16 +299,11 @@ export default class LogService { @@ -299,16 +299,11 @@ export default class LogService {
299 newUserTime++; 299 newUserTime++;
300 StorageUtils.I.set("newUserTime", newUserTime) 300 StorageUtils.I.set("newUserTime", newUserTime)
301 let newUserDot = StorageUtils.I.get("newUserDot") || 0; 301 let newUserDot = StorageUtils.I.get("newUserDot") || 0;
302 - if (newUserDot === 2) clearInterval(this.stayInterval); 302 + if (newUserDot === 1) clearInterval(this.stayInterval);
303 // console.log("newUserTime", newUserTime, newUserDot) 303 // console.log("newUserTime", newUserTime, newUserDot)
304 if (newUserTime >= 30 && newUserDot == 0) { 304 if (newUserTime >= 30 && newUserDot == 0) {
305 StorageUtils.I.set("newUserDot", 1); 305 StorageUtils.I.set("newUserDot", 1);
306 this.loadingFinishStay(30); 306 this.loadingFinishStay(30);
307 - }  
308 - if (newUserTime >= 300) {  
309 - StorageUtils.I.set("newUserDot", 2);  
310 - // this.loadingFinishStay(300);// 300秒计时  
311 - this.attributePtm();  
312 clearInterval(this.stayInterval); 307 clearInterval(this.stayInterval);
313 } 308 }
314 } 309 }
@@ -327,17 +322,17 @@ export default class LogService { @@ -327,17 +322,17 @@ export default class LogService {
327 * 修改用户属性 ptm 是否累计玩游戏300秒,1是 322 * 修改用户属性 ptm 是否累计玩游戏300秒,1是
328 * @returns 323 * @returns
329 */ 324 */
330 - attributePtm() {  
331 - let pkv = SDKVersion;  
332 - let uid = DataService.I.UserId;  
333 - let token = DataService.I.Token;  
334 - return SDKApi.attribute({  
335 - pkv,  
336 - uid,  
337 - token,  
338 - ptm: 1  
339 - })  
340 - } 325 + // attributePtm() {
  326 + // let pkv = SDKVersion;
  327 + // let uid = DataService.I.UserId;
  328 + // let token = DataService.I.Token;
  329 + // return SDKApi.attribute({
  330 + // pkv,
  331 + // uid,
  332 + // token,
  333 + // ptm: 1
  334 + // })
  335 + // }
341 336
342 337
343 /** 338 /**
wxsdk/service/entity/SdkData.ts
@@ -39,10 +39,10 @@ export default class SdkData { @@ -39,10 +39,10 @@ export default class SdkData {
39 public logindays: number; // 登录天数 39 public logindays: number; // 登录天数
40 public amount: number; // 充值金额 40 public amount: number; // 充值金额
41 public pon: number; // 用户类型:1微信投放2抖音3自然量0未知 41 public pon: number; // 用户类型:1微信投放2抖音3自然量0未知
42 - public ptm:number; 42 + public ptm:number; // 当天是否300s
43 public cule_token: string; // 用户通过广告调起微信小游戏的唯一编码 43 public cule_token: string; // 用户通过广告调起微信小游戏的唯一编码
44 - public creative_id: string; //创意ID  
45 - public advertister_id: string; //广告账户ID 44 + public creative_id: string; // 创意ID
  45 + public advertister_id: string; // 广告账户ID
46 public request_id: string; // 请求下发ID 46 public request_id: string; // 请求下发ID
47 47
48 48
wxsdk/utils/StorageUtils.ts
@@ -26,6 +26,13 @@ export default class StorageUtils { @@ -26,6 +26,13 @@ export default class StorageUtils {
26 return +(new Date().getTime() / 1000).toFixed(0); 26 return +(new Date().getTime() / 1000).toFixed(0);
27 } 27 }
28 28
  29 + /**
  30 + *
  31 + * @param key
  32 + * @param value
  33 + * @param expiration 距离目标(下一天)多少秒
  34 + * @returns
  35 + */
29 set(key: string, value: Object, expiration = 0) { 36 set(key: string, value: Object, expiration = 0) {
30 const entity = { 37 const entity = {
31 timestamp: this.timestamp, 38 timestamp: this.timestamp,
@@ -58,6 +65,7 @@ export default class StorageUtils { @@ -58,6 +65,7 @@ export default class StorageUtils {
58 // 已过期 65 // 已过期
59 if (this.__isExpired(entity)) { 66 if (this.__isExpired(entity)) {
60 this.remove(key); 67 this.remove(key);
  68 + // console.log("过期了",key);
61 return null; 69 return null;
62 } else { 70 } else {
63 return entity.value; 71 return entity.value;
wxsdk/wx/WxLogin.ts
@@ -94,7 +94,7 @@ export default class WxLogin { @@ -94,7 +94,7 @@ export default class WxLogin {
94 if (data) { 94 if (data) {
95 // 设置登录信息 95 // 设置登录信息
96 if (data.data) { 96 if (data.data) {
97 - let { channel, uid, firstlogin, token, reftoken, openid, expire, isnew, gameconfig,logindays,amount,pon,ptm } = data.data; 97 + let { channel, uid, firstlogin, token, reftoken, openid, expire, isnew, gameconfig,logindays,amount,pon} = data.data;
98 LogService.I.setLogind({ 98 LogService.I.setLogind({
99 channel, 99 channel,
100 userId: uid, 100 userId: uid,
@@ -106,8 +106,7 @@ export default class WxLogin { @@ -106,8 +106,7 @@ export default class WxLogin {
106 expire, 106 expire,
107 logindays, 107 logindays,
108 amount, 108 amount,
109 - pon,  
110 - ptm 109 + pon
111 }); 110 });
112 OnlineService.I.setData(gameconfig) 111 OnlineService.I.setData(gameconfig)
113 LogService.I.active(); 112 LogService.I.active();