调试:onConsole 覆盖全部三个 Web 容器,全量转发 H5 console
大厅/子游戏(BridgeGameContainer)/通用网页(GenericWebContainer) 的 Web 均加 onConsole, 统一 tag=WebConsole,带角色(lobby/subgame/genericweb)+级别+来源文件行,debug 限定。 便于从 H5 console 排查问题(如动画/缩放)。 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 4.8
parent
7179e95da1
commit
5462643ce2
@@ -203,6 +203,15 @@ export struct BridgeGameContainer {
|
|||||||
return this.params.entryUrl !== '' ? this.params.entryUrl : $rawfile('test_echo.html');
|
return this.params.entryUrl !== '' ? this.params.entryUrl : $rawfile('test_echo.html');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/** 转发 H5 console 到 hilog(debug 限定,带角色/级别/来源行,便于排查 H5 报错)。tag=WebConsole。 */
|
||||||
|
private logWebConsole(role: string, event: OnConsoleEvent): void {
|
||||||
|
if (!AppEnv.isDebug()) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
const m: ConsoleMessage = event.message;
|
||||||
|
Logger.tag('WebConsole').i(`[${role}][lv${m.getMessageLevel()}] ${m.getMessage()} @${m.getSourceId()}:${m.getLineNumber()}`);
|
||||||
|
}
|
||||||
|
|
||||||
build() {
|
build() {
|
||||||
NavDestination() {
|
NavDestination() {
|
||||||
Stack() {
|
Stack() {
|
||||||
@@ -225,10 +234,7 @@ export struct BridgeGameContainer {
|
|||||||
}
|
}
|
||||||
})
|
})
|
||||||
.onConsole((event: OnConsoleEvent) => {
|
.onConsole((event: OnConsoleEvent) => {
|
||||||
// 仅 debug 转发 H5 console 到 hilog,便于排查 H5 问题;release 不打扰
|
this.logWebConsole('lobby', event);
|
||||||
if (AppEnv.isDebug()) {
|
|
||||||
Logger.tag('WebConsole').i(event.message.getMessage());
|
|
||||||
}
|
|
||||||
return false;
|
return false;
|
||||||
})
|
})
|
||||||
.onRenderExited((event: OnRenderExitedEvent) => this.slotL?.onRenderExited(event.renderExitReason))
|
.onRenderExited((event: OnRenderExitedEvent) => this.slotL?.onRenderExited(event.renderExitReason))
|
||||||
@@ -250,6 +256,10 @@ export struct BridgeGameContainer {
|
|||||||
this.slotS?.onFirstProgress();
|
this.slotS?.onFirstProgress();
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
.onConsole((event: OnConsoleEvent) => {
|
||||||
|
this.logWebConsole('subgame', event);
|
||||||
|
return false;
|
||||||
|
})
|
||||||
.onRenderExited((event: OnRenderExitedEvent) => this.slotS?.onRenderExited(event.renderExitReason))
|
.onRenderExited((event: OnRenderExitedEvent) => this.slotS?.onRenderExited(event.renderExitReason))
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ import { common, Want } from '@kit.AbilityKit';
|
|||||||
import { window } from '@kit.ArkUI';
|
import { window } from '@kit.ArkUI';
|
||||||
import { BusinessError } from '@kit.BasicServicesKit';
|
import { BusinessError } from '@kit.BasicServicesKit';
|
||||||
import { SettingsProxy } from 'feature_bridge';
|
import { SettingsProxy } from 'feature_bridge';
|
||||||
import { Logger } from 'common';
|
import { AppEnv, Logger } from 'common';
|
||||||
import { GenericWebParams, GenericWebResult } from '../routes/AppRoutes';
|
import { GenericWebParams, GenericWebResult } from '../routes/AppRoutes';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -92,6 +92,14 @@ export struct GenericWebContainer {
|
|||||||
this.controller.runJavaScript(`getWebdata(${this.jsArg(this.params.data)})`);
|
this.controller.runJavaScript(`getWebdata(${this.jsArg(this.params.data)})`);
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
.onConsole((event: OnConsoleEvent) => {
|
||||||
|
// 转发 H5 console 到 hilog(debug 限定,tag=WebConsole)
|
||||||
|
if (AppEnv.isDebug()) {
|
||||||
|
const m: ConsoleMessage = event.message;
|
||||||
|
Logger.tag('WebConsole').i(`[genericweb][lv${m.getMessageLevel()}] ${m.getMessage()} @${m.getSourceId()}:${m.getLineNumber()}`);
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
})
|
||||||
}
|
}
|
||||||
.hideTitleBar(true)
|
.hideTitleBar(true)
|
||||||
.onBackPressed(() => {
|
.onBackPressed(() => {
|
||||||
|
|||||||
Reference in New Issue
Block a user