-
Creator 版本: 3.8.3
-
目标平台: 微信小游戏
-
重现方式:未知
加载资源后,加载场景有一定概率出现scene文件丢失问题,有没有大哥知道是什么原因呢,异常捕获也抓不到。
private Loadingdata(bundlename: string, finshedcount: number, curcount: number): Promise<loadstatedata> {
return new Promise((resolve) => {
try {
assetManager.loadBundle(bundlename, (err, bundle) => {
if (err) {
if (CustomData.umastate) {
CustomData.Api.uma.trackEvent('error', { "details": `加载包名${bundlename}错误,用户id${sys.localStorage.getItem('userid')},${err}` });
}
resolve({ 'state': false, 'errmsg': err })
} else {
bundle.loadDir('', (finshed, total) => {
this.UpdateUi(finshed, total, finshedcount, curcount)
}, (err, assets) => {
if (err) {
if (CustomData.umastate) {
CustomData.Api.uma.trackEvent('error', { "details": `加载资源错误,用户id${sys.localStorage.getItem('userid')},${err}` });
}
resolve({ 'state': false, 'errmsg': err });
} else {
resolve({ 'state': true, 'errmsg': '' })
}
})
}
})
} catch (err) {
this.errcount += 1;
if (this.errcount < 3) {
this.loaddata();
if (CustomData.umastate) {
CustomData.Api.uma.trackEvent('error', { "details": `用户id${sys.localStorage.getItem('userid')},加载页面捕获错误:${err},来源:${Loaddata.scenefrom},加载场景:${Loaddata.scenename}` });
}
resolve({ 'state': false, 'errmsg': err })
} else {
let labelnode = find('Canvas/Label');
labelnode.getComponent(Animation).stop();
labelnode.getComponent(Label).string = '加载失败';
resolve({ 'state': false, 'errmsg': err });
}
}
})
}

