Initial commit: Client Doc docs Server Tools
Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -0,0 +1,160 @@
|
||||
import moduleHelper from './module-helper';
|
||||
import { launchEventType } from '../plugin-config';
|
||||
import { setArrayBuffer, uid } from './utils';
|
||||
export default {
|
||||
WXReportGameStart() {
|
||||
GameGlobal.manager.reportCustomLaunchInfo();
|
||||
},
|
||||
WXReportGameSceneError(sceneId, errorType, errStr, extInfo) {
|
||||
if (GameGlobal.manager && GameGlobal.manager.reportGameSceneError) {
|
||||
GameGlobal.manager.reportGameSceneError(sceneId, 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() {
|
||||
const err = new Error('WXUncaughtException');
|
||||
return err;
|
||||
}
|
||||
const err = currentStackTrace();
|
||||
let fullTrace = err.stack?.toString();
|
||||
if (fullTrace) {
|
||||
const posOfThisFunc = fullTrace.indexOf('WXUncaughtException');
|
||||
if (posOfThisFunc !== -1) {
|
||||
fullTrace = fullTrace.substr(posOfThisFunc);
|
||||
}
|
||||
const posOfRaf = fullTrace.lastIndexOf('browserIterationFunc');
|
||||
if (posOfRaf !== -1) {
|
||||
fullTrace = fullTrace.substr(0, posOfRaf);
|
||||
}
|
||||
}
|
||||
const realTimelog = wx.getRealtimeLogManager();
|
||||
realTimelog.error(fullTrace);
|
||||
const logmanager = wx.getLogManager({ level: 0 });
|
||||
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 = uid();
|
||||
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 = uid();
|
||||
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 = uid();
|
||||
GameGlobal.manager.removeFile(path).then((res) => {
|
||||
moduleHelper.send('RemoveFileCallback', JSON.stringify({
|
||||
callbackId: key,
|
||||
result: res,
|
||||
}));
|
||||
});
|
||||
return key;
|
||||
}
|
||||
return '';
|
||||
},
|
||||
WXGetCachePath(url) {
|
||||
if (GameGlobal.manager && GameGlobal.manager.getCachePath) {
|
||||
return GameGlobal.manager.getCachePath(url);
|
||||
}
|
||||
},
|
||||
WXGetPluginCachePath() {
|
||||
if (GameGlobal.manager && GameGlobal.manager.PLUGIN_CACHE_PATH) {
|
||||
return GameGlobal.manager.PLUGIN_CACHE_PATH;
|
||||
}
|
||||
},
|
||||
WXOnLaunchProgress() {
|
||||
if (GameGlobal.manager && GameGlobal.manager.onLaunchProgress) {
|
||||
const key = uid();
|
||||
// 异步执行,保证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 '';
|
||||
},
|
||||
WXSetDataCDN(path) {
|
||||
if (GameGlobal.manager && GameGlobal.manager.setDataCDN) {
|
||||
GameGlobal.manager.setDataCDN(path);
|
||||
}
|
||||
},
|
||||
WXSetPreloadList(paths) {
|
||||
if (GameGlobal.manager && GameGlobal.manager.setPreloadList) {
|
||||
const list = (paths || '').split(',').filter(str => !!str && !!str.trim());
|
||||
GameGlobal.manager.setPreloadList(list);
|
||||
}
|
||||
},
|
||||
WXSetArrayBuffer(buffer, offset, callbackId) {
|
||||
setArrayBuffer(buffer, offset, callbackId);
|
||||
},
|
||||
};
|
||||
Reference in New Issue
Block a user