2022-08-01 03:47:37 +00:00
|
|
|
|
import moduleHelper from "./module-helper";
|
|
|
|
|
|
import { launchEventType } from "../plugin-config";
|
|
|
|
|
|
|
|
|
|
|
|
export default {
|
|
|
|
|
|
WXReportGameStart() {
|
|
|
|
|
|
GameGlobal.manager.reportCustomLaunchInfo();
|
|
|
|
|
|
},
|
|
|
|
|
|
WXSetGameStage(stageType) {
|
|
|
|
|
|
if (GameGlobal.manager && GameGlobal.manager.setGameStage) {
|
|
|
|
|
|
GameGlobal.manager.setGameStage(stageType);
|
|
|
|
|
|
}
|
|
|
|
|
|
},
|
|
|
|
|
|
WXReportGameStageCostTime(ms, extInfo) {
|
|
|
|
|
|
if (GameGlobal.manager && GameGlobal.manager.reportGameStageCostTime) {
|
|
|
|
|
|
GameGlobal.manager.reportGameStageCostTime(ms, extInfo);
|
|
|
|
|
|
}
|
|
|
|
|
|
},
|
|
|
|
|
|
WXReportGameStageError(errorType, errStr, extInfo) {
|
|
|
|
|
|
if (GameGlobal.manager && GameGlobal.manager.reportGameStageError) {
|
|
|
|
|
|
GameGlobal.manager.reportGameStageError(errorType, errStr, extInfo);
|
|
|
|
|
|
}
|
|
|
|
|
|
},
|
|
|
|
|
|
WXWriteLog(str) {
|
|
|
|
|
|
if (GameGlobal.manager && GameGlobal.manager.writeLog) {
|
|
|
|
|
|
GameGlobal.manager.writeLog(str);
|
|
|
|
|
|
}
|
|
|
|
|
|
},
|
|
|
|
|
|
WXWriteWarn(str) {
|
|
|
|
|
|
if (GameGlobal.manager && GameGlobal.manager.writeWarn) {
|
|
|
|
|
|
GameGlobal.manager.writeWarn(str);
|
|
|
|
|
|
}
|
|
|
|
|
|
},
|
|
|
|
|
|
WXHideLoadingPage() {
|
|
|
|
|
|
if (GameGlobal.manager && GameGlobal.manager.hideLoadingPage) {
|
|
|
|
|
|
GameGlobal.manager.hideLoadingPage();
|
|
|
|
|
|
}
|
|
|
|
|
|
},
|
|
|
|
|
|
WXReportUserBehaviorBranchAnalytics(branchId, branchDim, eventType){
|
|
|
|
|
|
wx.reportUserBehaviorBranchAnalytics(branchId, branchDim, eventType);
|
|
|
|
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
WXPreloadConcurrent(count) {
|
|
|
|
|
|
if (GameGlobal.manager && GameGlobal.manager.setConcurrent) {
|
|
|
|
|
|
GameGlobal.manager.setConcurrent(count)
|
|
|
|
|
|
}
|
|
|
|
|
|
},
|
|
|
|
|
|
WXIsCloudTest() {
|
|
|
|
|
|
if (typeof GameGlobal.isTest !== "undefined" && GameGlobal.isTest ) {
|
|
|
|
|
|
return true;
|
|
|
|
|
|
}
|
|
|
|
|
|
return false;
|
|
|
|
|
|
},
|
|
|
|
|
|
WXUncaughtException(needAbort) {
|
|
|
|
|
|
function currentStackTrace() {
|
|
|
|
|
|
var err = new Error('WXUncaughtException');
|
|
|
|
|
|
return err
|
|
|
|
|
|
}
|
|
|
|
|
|
let err = currentStackTrace();
|
|
|
|
|
|
let fullTrace = err.stack.toString()
|
|
|
|
|
|
let posOfThisFunc = fullTrace.indexOf('WXUncaughtException')
|
|
|
|
|
|
if (posOfThisFunc != -1) fullTrace = fullTrace.substr(posOfThisFunc);
|
|
|
|
|
|
let posOfRaf = fullTrace.lastIndexOf("browserIterationFunc");
|
|
|
|
|
|
if (posOfRaf != -1) fullTrace = fullTrace.substr(0, posOfRaf);
|
|
|
|
|
|
const realTimelog = wx.getRealtimeLogManager();
|
|
|
|
|
|
realTimelog.error(fullTrace)
|
|
|
|
|
|
const logmanager = wx.getLogManager()
|
|
|
|
|
|
logmanager.warn(fullTrace)
|
|
|
|
|
|
if (needAbort === true) {
|
|
|
|
|
|
GameGlobal.onCrash(err);
|
|
|
|
|
|
throw err;
|
|
|
|
|
|
} else {
|
|
|
|
|
|
setTimeout(() => {
|
|
|
|
|
|
throw err;
|
|
|
|
|
|
}, 0);
|
|
|
|
|
|
}
|
|
|
|
|
|
},
|
|
|
|
|
|
WXCleanAllFileCache() {
|
|
|
|
|
|
if (GameGlobal.manager && GameGlobal.manager.cleanCache) {
|
|
|
|
|
|
const key = new Date().getTime().toString(32)+Math.random().toString(32);
|
|
|
|
|
|
GameGlobal.manager.cleanAllCache().then(res => {
|
|
|
|
|
|
moduleHelper.send('CleanAllFileCacheCallback', JSON.stringify({
|
|
|
|
|
|
callbackId: key,
|
|
|
|
|
|
result: res
|
|
|
|
|
|
}))
|
|
|
|
|
|
})
|
|
|
|
|
|
return key;
|
|
|
|
|
|
}
|
|
|
|
|
|
return '';
|
|
|
|
|
|
},
|
|
|
|
|
|
WXCleanFileCache(fileSize) {
|
|
|
|
|
|
if (GameGlobal.manager && GameGlobal.manager.cleanCache) {
|
|
|
|
|
|
const key = new Date().getTime().toString(32)+Math.random().toString(32);
|
|
|
|
|
|
GameGlobal.manager.cleanCache(fileSize).then(res => {
|
|
|
|
|
|
moduleHelper.send('CleanFileCacheCallback', JSON.stringify({
|
|
|
|
|
|
callbackId: key,
|
|
|
|
|
|
result: res
|
|
|
|
|
|
}))
|
|
|
|
|
|
})
|
|
|
|
|
|
return key;
|
|
|
|
|
|
}
|
|
|
|
|
|
return '';
|
|
|
|
|
|
},
|
|
|
|
|
|
WXRemoveFile(path) {
|
|
|
|
|
|
if (GameGlobal.manager && GameGlobal.manager.removeFile && path) {
|
|
|
|
|
|
const key = new Date().getTime().toString(32)+Math.random().toString(32);
|
|
|
|
|
|
GameGlobal.manager.removeFile(path).then(res => {
|
|
|
|
|
|
moduleHelper.send('RemoveFileCallback', JSON.stringify({
|
|
|
|
|
|
callbackId: key,
|
|
|
|
|
|
result: res
|
|
|
|
|
|
}))
|
|
|
|
|
|
})
|
|
|
|
|
|
return key;
|
|
|
|
|
|
}
|
|
|
|
|
|
return '';
|
|
|
|
|
|
},
|
|
|
|
|
|
WXOnLaunchProgress() {
|
|
|
|
|
|
if (GameGlobal.manager && GameGlobal.manager.onLaunchProgress) {
|
|
|
|
|
|
const key = new Date().getTime().toString(32)+Math.random().toString(32);
|
|
|
|
|
|
// 异步执行,保证C#已经记录这个回调ID
|
|
|
|
|
|
setTimeout(() => {
|
|
|
|
|
|
GameGlobal.manager.onLaunchProgress((e) => {
|
|
|
|
|
|
moduleHelper.send('OnLaunchProgressCallback', JSON.stringify({
|
|
|
|
|
|
callbackId: key,
|
|
|
|
|
|
res: JSON.stringify(Object.assign({}, e.data, {
|
|
|
|
|
|
type: e.type
|
|
|
|
|
|
}))
|
|
|
|
|
|
}))
|
|
|
|
|
|
// 最后一个事件完成,结束监听
|
|
|
|
|
|
if (e.type === launchEventType.prepareGame) {
|
|
|
|
|
|
moduleHelper.send('RemoveLaunchProgressCallback', JSON.stringify({
|
|
|
|
|
|
callbackId: key
|
|
|
|
|
|
}))
|
|
|
|
|
|
}
|
|
|
|
|
|
})
|
|
|
|
|
|
}, 0);
|
|
|
|
|
|
return key;
|
|
|
|
|
|
}
|
|
|
|
|
|
return '';
|
|
|
|
|
|
}
|
2022-07-27 13:57:29 +00:00
|
|
|
|
}
|