Files
youle_app_ohos/feature_capabilities/Index.ets
T
lanterngamescn 98854f7312 M4: 通用网页容器 + SettingsProxy + NavProvider + 子游戏切换
T-M4-01/02/03 GenericWebContainer(§11.3 第二套机制,不挂桥):
  - javaScriptProxy 注入 settings 对象 6 方法(SettingsProxy,函数回调避开 ArkTS 对象字面量限制)
  - 首次 100% runJavaScript 直调 getWebdata('<data>');返回键 isbackfinishweb→gamebackkeydown /
    isexitdialogeshow→退出确认→backgameData();关闭 pop({data}) 101 语义回上层
  - orientation "1"竖/其他横(window.setPreferredOrientation);browser 隐式 want
T-M3-06 NavProvider:OpenurlTitleData(开通用容器,onPop→callHandler getWebdata)、
  SwitchOverGameData(同容器 loadUrl 切子游戏+重注入 app_data(launchtype'1')+方向+复位首屏标志)、
  getGameinstall(同步 1/0 查 <解压根>/<dir>/index.html)、backgameData(重载大厅+待加载后 getWebdata)
导航解耦:common NavEvents(名+具名 payload interface);NavProvider 发 EventBus → BridgeGameContainer 执行
  (容器持 pathStack/controller)。EventBus payload 放宽为 Object(ArkTS 禁 Record 字面量),用 GenericEventData
domain AppDataInjector.buildValues 复用(StartupOrchestrator + 子游戏切换共用,去重)
组装根装配 NavProvider

devecocli build 通过。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-25 20:58:10 +08:00

29 lines
1.7 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
// feature_capabilities HAR —— 能力层(导出入口 SSOT,框架 §6)
// 插件框架
export { CapabilityProvider, CapabilityContext } from './src/main/ets/core/CapabilityProvider';
export { CapabilityRegistrar } from './src/main/ets/core/CapabilityRegistrar';
// 示例能力(M2 脚手架,M3 逐步替换为真实 Provider
export { EchoSampleProvider } from './src/main/ets/providers/EchoSampleProvider';
// —— M3 能力 Provider ——
export { RoomStubProvider, PayStubProvider } from './src/main/ets/providers/StubProviders';
export { VibrateProvider } from './src/main/ets/providers/VibrateProvider';
export { ClipboardProvider } from './src/main/ets/providers/ClipboardProvider';
export { AppSystemProvider } from './src/main/ets/providers/AppSystemProvider';
export { DeviceProvider } from './src/main/ets/providers/DeviceProvider';
export { NetworkProvider } from './src/main/ets/providers/NetworkProvider';
export { ShareProvider } from './src/main/ets/providers/ShareProvider';
export { LoginProvider } from './src/main/ets/providers/LoginProvider';
export { PhotoProvider } from './src/main/ets/providers/PhotoProvider';
export { ShakeProvider } from './src/main/ets/providers/ShakeProvider';
export { ScanProvider } from './src/main/ets/providers/ScanProvider';
export { CameraProvider } from './src/main/ets/providers/CameraProvider';
export { LocationProvider } from './src/main/ets/providers/LocationProvider';
export { AudioProvider } from './src/main/ets/providers/AudioProvider';
export { NavProvider } from './src/main/ets/providers/NavProvider';
// 微信 SDK 封装(EntryAbility 处理回调 want 需用)
export { WeChatApi, WX_APP_ID } from './src/main/ets/wx/WeChatApi';